Building libav with 64 bit NVidia drivers 32bit compatibility drivers
64 bit, multilib Slackware 14 (current) with NVIDIA-Linux-x86_64-319.32.run here.
make[3]: Leaving directory `/tmp/build/tmp-libva/libva-0.32.0/va/egl' make[2]: Leaving directory `/tmp/build/tmp-libva/libva-0.32.0/va/egl' make[2]: Entering directory `/tmp/build/tmp-libva/libva-0.32.0/va' CCLD libva-glx.la /usr/lib/libGL.so: could not read symbols: File in wrong format collect2: error: ld returned 1 exit status Is what I am getting, both with SBo and alien slackbuilds, and regardless of LDFLAGS with /usr/lib64. The reason I have the compat drivers is Wine. Any help is appreciated and I will deliver any further infos, should they be requested. Cheers! ------------------------------------------------------------------------------------------- Fix: NVidia installer messed up the libGL.la file located at /usr/lib64/libGL.la Changing Code:
# Libraries that this one depends upon. Code:
# Libraries that this one depends upon. |
So you already followed this advice:
http://slackbuilds.org/faq/#multilib and it still fails? Can you put up the full package names for mesa on your system? Last time I saw this, and the slackbuilds.org fix didn't work, the person had compat32 and i486 mesa packages on their x64 slackware. |
WhiteWolf1776:
Yes, I have followed that advice and it still fails, tried it with libsuffix and setting it to lib64 directly, no dice. mesa-9.1.4-x86_64-1 mesa-compat32-9.1.2-x86_64-2compat32 Are my mesa packages. So far this has been the only problematic package for me, had no troubles with multilib for anything else. |
FYI, I just tried and building a package for libva works fine for me on slackware64-current with multilib and nvidia-driver (with 32bit libraries too) using SBo script.
|
Only thing I see is that your mesa packages are out of sync... not sure how that would do this, but all of your compat32 packages should be in sync with your x64 packages.
|
Code:
ponce: Not that I know if this helps. -rwxr-xr-x 1 root root 1157 May 15 00:51 /usr/lib/libEGL.la lrwxrwxrwx 1 root root 15 Jun 11 00:39 /usr/lib/libEGL.so -> libEGL.so.1.0.0 lrwxrwxrwx 1 root root 15 Jun 11 00:39 /usr/lib/libEGL.so.1 -> libEGL.so.1.0.0 -rwxr-xr-x 1 root root 118228 May 15 00:52 /usr/lib/libEGL.so.1.0.0 lrwxrwxrwx 1 root root 10 Jul 18 16:30 /usr/lib/libGL.so -> libGL.so.1 lrwxrwxrwx 1 root root 15 Jul 18 16:30 /usr/lib/libGL.so.1 -> libGL.so.319.32 -rwxr-xr-x 1 root root 989784 Jul 18 16:30 /usr/lib/libGL.so.319.32 -rw-r--r-- 1 root root 604410 Mar 18 22:43 /usr/lib/libGLEW.a lrwxrwxrwx 1 root root 16 Jun 11 00:39 /usr/lib/libGLEW.so -> libGLEW.so.1.9.0 lrwxrwxrwx 1 root root 16 Jun 11 00:39 /usr/lib/libGLEW.so.1.9 -> libGLEW.so.1.9.0 -rw-r--r-- 1 root root 416680 Mar 18 22:43 /usr/lib/libGLEW.so.1.9.0 -rwxr-xr-x 1 root root 1215 Feb 22 00:33 /usr/lib/libGLU.la lrwxrwxrwx 1 root root 15 Jun 11 00:39 /usr/lib/libGLU.so -> libGLU.so.1.3.1 lrwxrwxrwx 1 root root 15 Jun 11 00:39 /usr/lib/libGLU.so.1 -> libGLU.so.1.3.1 -rwxr-xr-x 1 root root 552632 Feb 22 00:33 /usr/lib/libGLU.so.1.3.1 |
Quote:
|
If it still fails, mod the slackbuild script as below suggests... so far that is all I have had to do.
from here: http://slackbuilds.org/faq/#multilib 18.I have problems compiling with my unofficial and unsupported multilib setup. If you are using multilib packages from somewhere and also have some 32bit packages installed, then you might run into problems with the build process trying to link 32bit libraries instead of 64bit libraries. If this occurs, it can probably be solved by placing the following line: LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \ after the lines for CFLAGS and CXXFLAGS passed to the configure script. In other words, make it look something like this: CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \ ./configure \ Beyond that, you are on your own. This is an unsupported setup. |
here libva doesn't try linking using /usr/lib at all: maybe it's something related to your setup/shell environment.
|
ponce:
Interesting. Getting the compat packages up to date did not do the trick, even with the modifications WhiteWolf suggested. I'll look into it. Maybe oh my zsh or one of my old, migrated bash files are mucking things up, thanks~ =) Edit: Still can't get it to work. Is there something I could do to make it easier to diagnose what's going wrong? |
By the way, I've always used the NVidia driver installer directly and not the slackbuild ones. Could that be affecting things?
|
I just used the nvidia .run file for years... not really an issue...
getting back to simple tho... before you run the slackbuild you su to get root access (with a - to get it's env)... i.e. su - password: then go to the directory with the slackbuild and ./<whatever>.SlackBuild and you are using bash... ? Just looking for the diff somewhere in here. |
Whitewolf:
I see, hm. But yeah, I used bash / login shell both with su - and a tty in single user mode. |
did you install the nvidia and say "YES" in the installer to loading 32 bit compatibility libraries? I remember there being that option... not sure of the effect to your current case tho.
|
Whitewolf:
Yes, I chose to install the compatibility libraries. http://pastebin.com/GTCMrdqU By the way, a full build log with http://slackbuilds.org/repository/14.0/libraries/libva/ ponce linked. built from a tty, login shell, bash, pretty much vanilla settings, unless I have missed something. edit: If I hadn't installed the compatibility libraries then libav would build cleanly. I've done it before. I might just ditch the compat libraries, but if it's possible to build it with them present, too, then that'd be nice, Wine, etc. Does Wine need them, though? |
All times are GMT -5. The time now is 12:07 PM. |