Bonjour à tous,

Je possède un projet C++ sous Linux que je souhaite importer sous Visual Express (la version gratuite). Sous Linux, aucun problème, l'exécutable se crée et le programme marche. Mais sous Visual Express, il y a une erreur à l'édition de lien que je ne comprends pas (ici avec un exemple bidon pour plus de simplicité, qui ne fait strictement rien) :

1>------ Début de la génération*: Projet*: testbidon, Configuration*: Debug Win32 ------
1>Compilation en cours...
1>main.cpp
1>Édition des liens en cours...
1>main.obj : error LNK2019: symbole externe non résolu "public: void __thiscall Bidon::print_bidon(void)" (?print_bidon@Bidon@@QAEXXZ) référencé dans la fonction _main
1>D:\Boulot\ENSE3\2A\Stage\Work\program_visualcpp\biotik\Debug\testbidon.exe : fatal error LNK1120: 1 externes non résolus
L'arborescence du code et son contenu sont les suivants :

main.cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
#include "bidon/bidon.h"
int main() {
	Bidon bidon;
	bidon.print_bidon();
	return(0);
}
bidon/bidon.cpp (ici je définis la méthode print_bidon) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
#include "bidon.h" 
 
void print_bidon() {
	return;
}
bidon/bidon.h (ici je déclare juste la méthode et définis la classe) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 
class Bidon {
	public:
		void print_bidon();
};
Quand je teste ce code en mettant tout les fichiers dans le même répertoire, tout va bien. Mais ici, c'est l'arborescence avec le sous-répertoire ("bidon") qui pose problème, et justement il est important de conserver cette arborescence dans le projet initial. Comment donc faire fonctionner ce programme sans changer l'arborescence des fichiers ?

J'ai trouvé une personne sur les forums qui a eu le même problème, mais impossible de la contacter... please help me !! :o)

P.S : tous les .obj sont correctement générés, c'est bien le linkage qui foire...