LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   How can I make PyQt4 slackbuild compile in Slackware64 <current>...? (http://www.linuxquestions.org/questions/slackware-14/how-can-i-make-pyqt4-slackbuild-compile-in-slackware64-current-778738/)

Alexvader 12-29-2009 01:16 PM

How can I make PyQt4 slackbuild compile in Slackware64 <current>...?
 
Hi Forum,

I have noticed that there is no SlackBuild for Slackware 13 for PyQt4...


Also I have noticed that Qt for Slackware 13 is 4.5, so Starting from the slackbuild for Slackware 12.2 I changed the ARCH variable, as well as the *.tar.gz to use ( 4.5.x ).

This package calls for Sip.

Since I have a non default Python install ( I downgraded to Python 2.5.2, changed the ARCH to x86_64 as well as the place where to put the libraries, from /usr/lib to /usr/lib64 so as to conform to Slackware64's standard );

I removepkg the standard sip that ships with Slackware64 13 ( built againsta Python 2.6.2 ), and picked the slackbuild from it, rebuilding it against Python 2.5.2.

This created a some files inside /usr/lib64/python2.5/site-packages as expected...

So far so good... everything ready to Build/install PyQt4 in Slackware64 13....

But when running the SlackBuild for it, It fails complaining that the configure.py from PyQt4 fails with an error about import sipconfig...

...Yet sipconfig is there allright ... in /usr/lib64/python2.5/site-packages...

There are various import instructions in this configure.py file... all these work...

Is there a way ( some sort of variable to be initialized, like PATH... but I guess this is not this simple... python is not BASH script... ) so that the slackbuild proceeds quietly...?

BRGDS

Alex


BTW, Is what I have done to build sip for "my" python sane enough, from the standpoint of system integrity...?

Alien Bob 12-29-2009 02:43 PM

Quote:

Originally Posted by Alexvader (Post 3808052)
Hi Forum,

I have noticed that there is no SlackBuild for Slackware 13 for PyQt4...

Ermm...http://slackware.osuosl.org/slackwar...source/l/PyQt/ has a SlackBuild for PyQT that builds version 4.4.4. I am not sure what your problem is. I am afraid, considering the other comments you made, that you are mixing up the 32-bit and 64-bit versions of Slackware?

Quote:

Also I have noticed that Qt for Slackware 13 is 4.5, so Starting from the slackbuild for Slackware 12.2 I changed the ARCH variable, as well as the *.tar.gz to use ( 4.5.x ).
You picked up the 32-bit version of the SlackBuild and modified it to build on 64-bit? There is a correct SlackBuild here, you know: http://slackware.osuosl.org/slackwar...0/source/l/qt/
The reason that this version of Qt announces itself as Qt but the version of our tarball is "r1008952" is caused by the fact that Slackware uses a version of Qt which is patched for better compatibility with KDE4.

Quote:

This package calls for Sip.

Since I have a non default Python install ( I downgraded to Python 2.5.2, changed the ARCH to x86_64 as well as the place where to put the libraries, from /usr/lib to /usr/lib64 so as to conform to Slackware64's standard );
Again, I think you are messing up between 32-bit and 64-bit versions of Slackware. Also I have told you in the past that you should not have to downgrade Python, you can install both versions in parallel.

Quote:

I removepkg the standard sip that ships with Slackware64 13 ( built againsta Python 2.6.2 ), and picked the slackbuild from it, rebuilding it against Python 2.5.2.

This created a some files inside /usr/lib64/python2.5/site-packages as expected...

So far so good... everything ready to Build/install PyQt4 in Slackware64 13....

But when running the SlackBuild for it, It fails complaining that the configure.py from PyQt4 fails with an error about import sipconfig...

...Yet sipconfig is there allright ... in /usr/lib64/python2.5/site-packages...

There are various import instructions in this configure.py file... all these work...

Is there a way ( some sort of variable to be initialized, like PATH... but I guess this is not this simple... python is not BASH script... ) so that the slackbuild proceeds quietly...?

BRGDS

Alex


BTW, Is what I have done to build sip for "my" python sane enough, from the standpoint of system integrity...?
I am afraid your system's integrity is having a holiday :-) But I am sure you will fix it in due time.

Eric

Alexvader 12-29-2009 05:06 PM

Hi AlienBob

Thks for your reply...

I expressed myself incorrectly... i did not "downgrade" i installed Python 2.5.2 period.

I am not using multilib... so I think tere is no possibility of being mixing 32 and 64...

As to restore system integrity, should be enough to removepkg "my" sip, and installpkg the "stock" sip... am I correct here...?

I never touched any other component besides of sip...

Even the Python2.6.2 is still there...

BRGDS

Alex

Alexvader 12-29-2009 05:30 PM

Hi Again :)

So, I reinstalled sip as from 64 <current>, yet when running the SlackBuild for PyQt that you pointed to me, i get into this :

Code:

PyQt-x11-gpl-4.4.4/designer/pluginloader.cpp
Traceback (most recent call last):
  File "configure.py", line 43, in <module>
    import sipconfig
ImportError: No module named sipconfig
make: *** No targets specified and no makefile found.  Stop.
make: *** No targets specified and no makefile found.  Stop.
root@iskandhar:/home/alex/PyQt13#

Yet sipconfig is there allright :

Code:

root@iskandhar:/home/alex/PyQt13# find /usr/lib64 -name sipconfig*
/usr/lib64/python2.6/site-packages/sipconfig.py
root@iskandhar:/home/alex/PyQt13#
root@iskandhar:/home/alex/PyQt13# ls /usr/lib | grep python
libpython2.5.so
libpython2.5.so.1.0
python2.5
root@iskandhar:/home/alex/PyQt13# ls /usr/lib64 | grep python
libboost_python.so
lroot@iskandhar:/home/alex/PyQt13# ls /usr/lib | grep python
libpython2.5.so
libpython2.5.so.1.0
python2.5
root@iskandhar:/home/alex/PyQt13# ls /usr/lib64 | grep python
libboost_python.so
libboost_python.so.1.41.0
libpython2.6.so
libpython2.6.so.1.0
python2.5
python2.6
ibboost_python.so.1.41.0
libpython2.6.so
libpython2.6.so.1.0
python2.5
python2.6
root@iskandhar:/home/alex/PyQt13# python -V
Python 2.5.2
root@iskandhar:/home/alex/PyQt13#

I will now installpkg Python 2.6.2 to see if sipconfig.py ever gets found...

BRGDS

Alex

Alexvader 12-29-2009 05:35 PM

Making some progresses...


Code:

root@iskandhar:/media/Slackware64-current DVD# installpkg slackware64/d/python-2.6.4-x86_64-1.txz
Verifying package python-2.6.4-x86_64-1.txz.
Installing package python-2.6.4-x86_64-1.txz [REC]:
PACKAGE DESCRIPTION:
# python (object-oriented interpreted programming language)
#
# Python is an interpreted, interactive, object-oriented programming
# language that combines remarkable power with very clear syntax.
# Python's basic power can be extended with your own modules written in
# C or C++.  Python is also adaptable as an extension language for
# existing applications.
#
Executing install script for python-2.6.4-x86_64-1.txz.
Package python-2.6.4-x86_64-1.txz installed.

root@iskandhar:/media/Slackware64-current DVD# python -V
Python 2.6.4
root@iskandhar:/media/Slackware64-current DVD#

This time the slackbuild progresses a little further...




Code:

...........................................................
Determining the layout of your Qt installation...
This is the GPL version of PyQt 4.4.4 (licensed under the GNU General Public
License) for Python 2.6.4 on linux2.
Error: This version of PyQt and the Desktop edition of Qt have incompatible
licenses.
make: *** No targets specified and no makefile found.  Stop.
make: *** No targets specified and no makefile found.  Stop.
root@iskandhar:/home/alex/PyQt13#

What do you suggest me to do now...?


BRGDS

Alex

Alien Bob 12-29-2009 05:35 PM

You have python libraries in /usr/lib on a 64-bit Slackware system. How do they get there if you did not add multilib support? My guess is that either you installed a 32-bit version of python 2.5, or you built a 64-bit version but used a SlackBuild that does not know about 64-bit Slackware so it does not install to the correct locations.

In any case, your configuration is not sane.

Eric

Alexvader 12-29-2009 05:49 PM

Hi AlienBob

I grabbed the slackbuild from Python 2.5.2, changed ARCH and installpkged it... that's how these libs got there...

In any case if i just removepkg python 2.5.2, should be allright...no...?

I mean... everything else is back to stock <current>... sip... was the only thing compiled against Py 2.5.2, and I removpkg'ed it and installpkg'ed the correct one...

There is only one app that I have compiled against Py 2.5.2, and this runs under 2.6.4... ( at least the last release does... )

Will removepkg py2.5.2 be enough, or do I have to reinstall my Slackware... :(

BRGDS

Alex

Alexvader 12-30-2009 07:20 AM

Hi AlienBob

I have found this slackbuild for Qt

http://slackware.osuosl.org/slackwar...0/source/l/qt/

I guess this is the unpatched vesion ( contrary to the version of Slackware64 <current> )

In case I removepkg Qt from my system ( 64 <current> ) and install the package from this slackbuild, ( I'm trying to solve this issue : )


Code:

...........................................................
Determining the layout of your Qt installation...
This is the GPL version of PyQt 4.4.4 (licensed under the GNU General Public
License) for Python 2.6.4 on linux2.
Error: This version of PyQt and the Desktop edition of Qt have incompatible
licenses.
make: *** No targets specified and no makefile found.  Stop.
make: *** No targets specified and no makefile found.  Stop.
root@iskandhar:/home/alex/PyQt13#

Would I be able to run the PyQt4 Slackbuild...?

sipconfig gets found now... Sip is stock version from < current > as well as Python...

Shoud there be any major incompatibility with Kde < current > for instance, or any other critical component in the system... ?

BRGDS

Alex

PS. I got a lot of "bad habits" from using Debian / Ubuntu for a long time...

Sometimes I need a package which I do not find for SL 13 or < current >, so I grab some slackbuild for Slackware 12.x or 11.x. change the ARCH value, build it and install it... is this incorrect...?

I restate that i *DO NOT* have 32bit components in my system, so everything that I built from previous versions of Slackware and installed,*MUST* necessarily have been built for 64... Even stuff I built from src2pkg, like Paraview ( a cmake project ) dropped stuff into /usr/lib instead of /usr/lib64...
... gnumeric ( wich I have built for 64 bit using the slackbuild from a previous version of Slackware ) also dropped stuff into /usr/lib instead of /usr/lib64... yet it works fine...

IMHO things in /usr/lib "are found when needed" regardless this being a 64bit pure system...

Must I expect some strange ( awkward and unpredictable ) behaviours because of having used Slackbuilds from previous releases of Slackware ...?

Should I format and reinstall and *NEVER* use slackbuilds from other than Slackware64 13 again... ?

Please ecuse these n00bish questions, but as I told you... I got too "Debianized"... must get back to the "Real World"... :)

Alien Bob 12-30-2009 07:36 AM

Quote:

Originally Posted by Alexvader (Post 3808795)
Hi AlienBob

I have found this slackbuild for Qt

http://slackware.osuosl.org/slackwar...0/source/l/qt/

I guess this is the unpatched vesion ( contrary to the version of Slackware64 <current> )

It is not an unpatched version. It is the same KDE-tailored copy of Qt, maintained by the KDE developers. It will not make a difference other than that you will be breaking Slackware in more ways than you can imagine if you remove parts of it and replace those with versions of the past.

Quote:

In case I removepkg Qt from my system ( 64 <current> ) and install the package from this slackbuild, ( I'm trying to solve this issue : )


Code:

...........................................................
Determining the layout of your Qt installation...
This is the GPL version of PyQt 4.4.4 (licensed under the GNU General Public
License) for Python 2.6.4 on linux2.
Error: This version of PyQt and the Desktop edition of Qt have incompatible
licenses.
make: *** No targets specified and no makefile found.  Stop.
make: *** No targets specified and no makefile found.  Stop.
root@iskandhar:/home/alex/PyQt13#

Would I be able to run the PyQt4 Slackbuild...?
As you undoubtedly realize, Slackware (13.0 as well as -current) has packages for Qt and PyQt which work. The fact that you can not make your PyQt compile means that you already have made one or more mistakes when changing system software.

Quote:

Sometimes I need a package which I do not find for SL 13 or < current >, so I grab some slackbuild for Slackware 12.x or 11.x. change the ARCH value, build it and install it... is this incorrect...?
I would certainly not do it that way for 32-bit Slackware - you are installing old, deprecated versions of system software which you've taken from old versions of Slackware. This will lead to incompatibilities. And for 64-bit Slackware, it is very much not advisable to use SlackBuild scripts from old Slackware releases, since those scripts know nothing about 64-bit directory conventions. As a result, your system has a mix of libraries in lib and lib64 directories. Probably even the same libraries but with different versions in both locations.

Quote:

I restate that i *DO NOT* have 32bit components in my system, so everything that I built from previous versions of Slackware and installed,*MUST* necessarily have been built for 64... Even stuff I built from src2pkg, like Paraview ( a cmake project ) dropped stuff into /usr/lib instead of /usr/lib64...
... gnumeric ( wich I have built for 64 bit using the slackbuild from a previous version of Slackware ) also dropped stuff into /usr/lib instead of /usr/lib64... yet it works fine...
The problems you are facing are proof of the opposite.

Quote:

Should I format and reinstall and *NEVER* use slackbuilds from other than Slackware64 13 again... ?
That would be my advice yes. You will have a much better Slackware system afterwards, and you'll have learnt a lot in the process.

Eric

Alexvader 12-30-2009 07:45 AM

Thx AlienBob

One more question...

What should I do... ( if there is anything that can be done ) in case I should need Python 2.5.x installed...?

We've seen it is incorrect to grab a slackbuild from a previous version... build it and install it...

Is there any different approach ... ?

BRGDS

Alex

I have also seen that src2pkg packages like the Paraview, dropped libs into /usr/lib...

...it is therefore not advisable to use them anyway... right...??

So... as a rule of thumb one may say that *anything* that creates a /usr/lib in a pure 64 bit Slackware is a "poisoned " package... right...?

For instance... I have used these Slackbuilds... ( Didn't find anything alike for Slackware 13 ... )

http://repository.slacky.eu/slackwar...ic/scilab/5.1/
http://repository.slacky.eu/slackwar...t/suitesparse/
............................................

And for some other stuff yet nothing so "serious" as Python...

Are these packages... suitesparrse, Scilab, gnumeric... also a "liability" to a freshly installed Slackware64 Current...?

My /usr/lib is rather tiny...

Code:

bound to 10.11.1.16 -- renewal in 10355 seconds.
root@iskandhar:/home/alex# ls /usr/lib
crda          libcamd.so.2      libcolamd.so.2    libhdf5_cpp.so.6          libhdf5_hl_cpp.so.6        liblastfm.so.0.3                libpython2.5.so.1.0      pkgconfig
gnumeric      libcamd.so.2.2    libcolamd.so.2.7  libhdf5_cpp.so.6.0.2      libhdf5_hl_cpp.so.6.0.2    liblastfm.so.0.3.0              libspreadsheet-1.9.1.so  pvm3
libamd.a      libccolamd.a      libcsparse.a      libhdf5_fortran.la        libhdf5hl_fortran.la        liblastfm_fingerprint.so        libspreadsheet.la        python2.5
libamd.so      libccolamd.so      libcsparse.so    libhdf5_fortran.so        libhdf5hl_fortran.so        liblastfm_fingerprint.so.0      libspreadsheet.so        rpm
libamd.so.2    libccolamd.so.2    libcxsparse.a    libhdf5_fortran.so.6      libhdf5hl_fortran.so.6      liblastfm_fingerprint.so.0.1    libsyslinux.a            scilab
libamd.so.2.2  libccolamd.so.2.7  libcxsparse.so    libhdf5_fortran.so.6.0.2  libhdf5hl_fortran.so.6.0.2  liblastfm_fingerprint.so.0.1.0  libumfpack.a            scons-1.2.0
libbtf.a      libcholmod.a      libhdf5.la        libhdf5_hl.la            libklu.a                    libldl.a                        libumfpack.so            sendmail
libbtf.so      libcholmod.so      libhdf5.so        libhdf5_hl.so            libklu.so                  libldl.so                      libumfpack.so.5          siconv
libbtf.so.1    libcholmod.so.1    libhdf5.so.6      libhdf5_hl.so.6          libklu.so.1                libldl.so.2                    libumfpack.so.5.0.2      syslinux
libbtf.so.1.0  libcholmod.so.1.6  libhdf5.so.6.0.2  libhdf5_hl.so.6.0.2      libklu.so.1.0              libldl.so.2.0                  mozilla                  terminfo
libcamd.a      libcolamd.a        libhdf5_cpp.la    libhdf5_hl_cpp.la        liblastfm.so                libmetis.a                      paraview-3.6            trn
libcamd.so    libcolamd.so      libhdf5_cpp.so    libhdf5_hl_cpp.so        liblastfm.so.0              libpython2.5.so                perl5
r



All times are GMT -5. The time now is 09:32 AM.