How can I make PyQt4 slackbuild compile in Slackware64 <current>...?
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
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...?
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.
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#
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#
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.
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...
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"...
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.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.