Bonjour à tous !
J'essaie de compiler depuis un système unix 32bits vers un système unix 64bits.
Sauf que, je bloque ! :p
Mon code :
Voici ma manipulation actuelle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 #include <iostream> int main() { std::cout << "hello world !" << std::endl; return 0; }
A ce stade, j'ai un répertoire "lib64" dans mon "usr/lib".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 apt-get install gcc-multilib
Ici, j'ai mon main.o qui est bien crée, aucun soucis.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 gcc -m64 Iusr/include -o main.o main.cpp
Et là, on rigole :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 gcc -m64 -o MonProgramme main.o
Quel étape est-ce que j'ai oubliée ou mal faite ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 main.cpp:(.text+0xa): undefined reference to `std::cout'
Merci d'avance pour votre aide !
edit: Parmis mes essais sans succès:
edit2:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 gcc -m64 -Lusr/lib64 -lc -o MonProgramme main.o
En remplaçant gcc par g++:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.1/libstdc++.so when searching for -lstdc++ /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.1/libstdc++.a when searching for -lstdc++ /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.1/libstdc++.so when searching for -lstdc++ /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.1/libstdc++.a when searching for -lstdc++ /usr/bin/ld: cannot find -lstdc++ collect2: ld returned 1 exit status
Partager