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 :

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;
}
Voici ma manipulation actuelle :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
apt-get install gcc-multilib
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
 
gcc -m64 Iusr/include -o main.o main.cpp
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 -o MonProgramme main.o
Et là, on rigole :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
main.cpp:(.text+0xa): undefined reference to `std::cout'
Quel étape est-ce que j'ai oubliée ou mal faite ?
Merci d'avance pour votre aide !

edit: Parmis mes essais sans succès:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
gcc -m64 -Lusr/lib64 -lc -o MonProgramme main.o
edit2:

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