2011-08-08 4 views
0

Je ne peux ni queue ni tête de l'erreur C++ suivant généré par g ++erreurs string.h De g ++ Compilation

/tmp/ccH0IPVU.o: In function `myAPP::mandatory_bitfield_t::to_s(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)': 
myAPP.cpp:(.text._ZN3myAPP20mandatory_bitfield_t4to_sERSsSs[myAPP::mandatory_bitfield_t::to_s(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)]+0x8c): undefined reference to `myAPP::to_s(unsigned char*, int)' 
/tmp/ccH0IPVU.o: In function `myAPP::optional_bitfield_t::to_s(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)': 
myAPP.cpp:(.text._ZN3myAPP19optional_bitfield_t4to_sERSsSs[myAPP::optional_bitfield_t::to_s(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)]+0x8d): undefined reference to `myAPP::to_s(unsigned char*, int)' 
collect2: ld returned 1 exit status 

Est-ce que quelqu'un sait ce que ces erreurs sont en référence et comment je peux les corriger?

+0

Vous pouvez fournir un extrait de code à partir du fichier 'myAPP.cpp'. –

+0

Avez-vous un 'myAPP :: to_s (unsigned char *, int)'? Si oui, vérifiez si vous passez le fichier objet nécessaire à l'éditeur de liens. – jweyrich

Répondre

4

Pour autant que l'éditeur de liens le sache, vous avez oublié d'inclure (compiler) une définition de myAPP::to_s(unsigned char*, int).

Je ne fais que traduire le message d'erreur.

Salutations & hth.

+0

En outre, cette fonction indéfinie est invoquée depuis 'myAPP :: mandatory_bitfield_t :: to_s (std :: string)' et 'myAPP :: optional_bitfield_t :: to_s (std :: string)'. –

3

C'est en fait une erreur de lien.

undefined reference to `myAPP::to_s(unsigned char*, int) 

signifie que votre code est appeler quelque part la méthode to_s, mais le corps de cette méthode n'a pas été inclus dans les fichiers objet transmis à l'éditeur de liens.