Monday, May 28, 2018

cross compiling - how to link 32bit libGL.so when building on 64bit Ubuntu?



I have set up a brand new clean install of Ubuntu 14.04LTS amd64. I'm trying to build a 32bit application that needs to link libGL.so and libGLU.so. When I try to install the needed dev-packages in i386 architecture, apt-get says it has to uninstall the respective amd64 packages?!




Why? Can't I have libglu1-mesa-dev installed for both 32bit and 64bit at the same time? Clearly it could install it into /usr/lib32 !



sudo apt-get install libglu1-mesa-dev:i386
...
The following extra packages will be installed:
libcgmanager0:i386 libdbus-1-3:i386 libdrm-amdgpu1:i386 libdrm-dev:i386
libgl1-mesa-dev:i386 libgl1-mesa-glx:i386 ...
The following packages will be REMOVED:
freeglut3-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev
...

0 upgraded, 39 newly installed, 4 to remove and 0 not upgraded.
Need to get 1,595 kB of archives.
After this operation, 5,559 kB of additional disk space will be used

Answer



The Ubuntu packages are indeed wonky. The work-around can be found in Ubuntu Bug #949060: https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/949606


No comments:

Post a Comment

plot explanation - Why did Peaches' mom hang on the tree? - Movies & TV

In the middle of the movie Ice Age: Continental Drift Peaches' mom asked Peaches to go to sleep. Then, she hung on the tree. This parti...