Nous avons une nouvelle application qui nécessite la glibc 2.4 (à partir de gcc 4.1). La machine sur laquelle nous fonctionnons a gcc 3.4.6. Nous ne pouvons pas mettre à niveau et l'application doit être exécutée sur cette machine.
Nous avons installé gcc 4.1, cependant, en ce qui concerne le temps de compilation, il utilise toutes les inclusions, etc., de 3.4.6.
Comment contourner cela?
Des suggestions sur l'utilisation de la version 4.1 uniquement pour cette application?
As-tu essayé gcc-select
? Sinon, essayez de définir le INCLUDE_PATH
et LIBRARY_PATH
dans votre Shell.
pour Ubuntu c'est assez facile
Sudo add-apt-repository ppa:ubuntu-toolchain-r/test
Sudo apt-get update
puis installez par exemple gcc version 6
Sudo apt-get install gcc-6
update-alternatives est un très bon moyen d'avoir plusieurs versions de gcc:
http://ubuntuguide.net/how-to-install-and-setup-gcc-4-1g4-1-in-ubuntu-10-0410-1
Vous exécutez peut-être toujours l'ancien gcc. Essayez de créer un lien symbolique de gcc
vers votre version de celui-ci, comme
ln -s gcc-4.1 gcc
Méfiez-vous de ne pas supprimer un ancien binaire "gcc" qui y est placé, au cas où ils ne placeraient pas seulement un lien symbolique. Si vous pouvez recompiler votre propre version de gcc, le plus sûr est simplement d'utiliser un autre préfixe au moment de la configuration de gcc, quelque chose comme --prefix=/home/jojo/usr/gcc
(je l'ai fait de cette façon avec gcc-4.4 de svn-trunk, et cela a très bien fonctionné).
Notez que cela exécute simplement la bonne version de gcc. Si vous mettez à jour votre gcc, votre glibc ne sera pas mise à jour automatiquement aussi. C'est un package séparé qui est profondément couplé avec le reste du système. Soyez prudent lorsque vous installez une autre version de glibc.