libstdc ++ 64 bits et la version 32 bits sur la même machine
-
22-08-2019 - |
Question
Je suis en train de traverser compiler une version de mon logiciel pour une plate-forme 64 bits. Puis-je avoir la version 32 bits et 64 bits de libstdc ++ installé sur la même machine sans soucis trop de casser mon linux installer. Le système d'exploitation est 32 bits ubuntu.
Je n'ai pas compilé croix avant et je voulais juste vérifier que si je mets mes CFLAGS et LDFLAGS pour la CPU appropriée, je devrais être ok une fois que je les versions correctes de libstdc ++ installé.
J'ai vérifié une version 64 bits de ubuntu mais cela a un lien symbolique
lib64 -> lib
ce serait beaucoup gâcher si cela est le cas sur une machine 32 bits aussi quelqu'un sait comment régler ce problème?
Je frappais l'erreur suivante au moment
[exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.so [exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.a when searching for -lstdc++ [exec] /usr/bin/ld: skipping incompatible
et ainsi de suite jusqu'à
[exec] /usr/bin/ld: cannot find -lstdc++
[exec] collect2: ld returned 1 exit status
Ce qui semble être dû au fait que je n'ai pas la version 64 bits de libstdc ++
La solution
Bien sûr, vous pouvez.
Il suffit de les mettre en /usr/lib
et /usr/lib64
, respectivement.
Impossible de vérifier sur Ubuntu
, mais Fedora
ils y arrivent droit des colis:
[~#] repoquery -q -l libstdc++.i386
/usr/lib/libstdc++.so.6
/usr/lib/libstdc++.so.6.0.10
[~#] repoquery -q -l libstdc++.x86_64
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.10