Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

[SOLVED] Can't find/install 32-bit version of libGLU.so

Linux Kernel, Network, and Services configuration.
Post Reply
Message
Author
ticketman
Posts: 136
Joined: 2012-06-30 11:06
Has thanked: 3 times

[SOLVED] Can't find/install 32-bit version of libGLU.so

#1 Post by ticketman »

I have 64bit Debian Testing (Buster) system.
I am compiling and linking a 32bit openGL application.

The compile is fine, but when linking I get:

/usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libGLU.so when searching for -lGLU
/usr/bin/ld: skipping incompatible //usr/lib/x86_64-linux-gnu/libGLU.a when searching for -lGLU
/usr/bin/ld: cannot find -lGLU

The linker options are:
-m32 -lpthread -lXrandr -lrt -lGL -lGLU

Now libGL.so (and also libGLX.so) is found in /usr/lib/i386-linux-gnu, but libGLU.so is not there.

I have libGLU.so in /usr/lib/x86_64-linux-gnu, but that is the 64 bit version.

I have libglu1-mesa and libglu1-mesa-dev installed.

For info,
/usr/lib/i386-linux-gnu/libGL.so points to: /etc/alternatives/glx--libGL.so-i386-linux-gnu which points to: /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so
/usr/lib/x86_64-linux-gnu/libGL.so points to: /etc/alternatives/glx--libGL.so-x86_64-linux-gnu which points to /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1

How can I get libGLU.so (32 bit) to appear in /usr/lib/i386-linux-gnu so my linker will work?

I am using a legacy nVidia driver.
Last edited by ticketman on 2018-07-29 09:59, edited 1 time in total.

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: Can't find/install 32-bit version of libGLU.so

#2 Post by stevepusser »

https://packages.debian.org/search?sear ... e&arch=any

So I would try installing the ":i386" version of the package.
MX Linux packager and developer

ticketman
Posts: 136
Joined: 2012-06-30 11:06
Has thanked: 3 times

Re: Can't find/install 32-bit version of libGLU.so [SOLVED]

#3 Post by ticketman »

Excellent steve, that fixed it:

Code: Select all

sudo apt-get install libglu1-mesa-dev:i386
[sudo] password for xxxxx: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libglu1-mesa:i386
The following NEW packages will be installed:
  libglu1-mesa:i386 libglu1-mesa-dev:i386
0 upgraded, 2 newly installed, 0 to remove and 34 not upgraded.
Need to get 382 kB of archives.
After this operation, 1,319 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
I notice that 32-bit libGL.so appears to be 'mesa' implementation, while 64-bit libGL.so appears to be 'nvidia' implementation.
Is there a way to make them both 'nvidia' implemented?
My concern is the mesa version will be much slower.

ticketman
Posts: 136
Joined: 2012-06-30 11:06
Has thanked: 3 times

Re: [SOLVED] Can't find/install 32-bit version of libGLU.so

#4 Post by ticketman »

"How can I get libGLU.so (32 bit) to appear in /usr/lib/i386-linux-gnu so my linker will work?"

The answer was :

Code: Select all

sudo apt-get install libgl1-nvidia-legacy-340xx-glx:i386
(I am using a legacy card)

Then

Code: Select all

The following additional packages will be installed:
  libnvidia-legacy-340xx-glcore:i386
The following NEW packages will be installed:
  libgl1-nvidia-legacy-340xx-glx:i386 libnvidia-legacy-340xx-glcore:i386
...
Setting up libnvidia-legacy-340xx-glcore:i386 (340.107-2) ...
Processing triggers for nvidia-legacy-340xx-alternative (340.107-2) ...
update-alternatives: updating alternative /usr/lib/nvidia/legacy-340xx because link group nvidia has changed slave links
...
Processing triggers for glx-alternative-nvidia (0.8.7) ...
update-alternatives: warning: forcing reinstallation of alternative /usr/lib/nvidia because link group glx is broken
Despite the warnings, it worked.

Post Reply