Link error
Sage
-
Sage -
Sage -
Bonjour,
Je travail actuellement sous devc++ et je tente, à l'aide de Tinyxml, de faire une lecture d'un fichier xml.
Mais, comme l'indique le titre de ce poste, j'ai un [link error] lors de la compilation de mon programme.
Mise en place de la bibliothèque :
J'ai télécharger la bibliothèque, je l'ai compilée, placer le .a et meme le .lib dans le dossier lib de mon compilateur, j'ai placer tinyxml.h et tinystr.h dans le repertoire include de mon compilateur.
Voici mon programme :
using namespace std;
#include <cstdlib>
#include <iostream>
#include <tinyxml.h>
#include <list>
struct user
{
string name;
string pass;
int droits;
};
int main(int argc, char *argv[])
{
list<user> user_list;
TiXmlDocument doc("users.xml");
if(!doc.LoadFile())
{
cerr << "erreur lors du chargement" << endl;
cerr << "error #" << doc.ErrorId() << " : " << doc.ErrorDesc() << endl;
return 1;
}
// TiXmlElement *elem = doc.FirstChildElement()->FirstChildElement();
TiXmlHandle hdl(&doc);
TiXmlElement *elem = hdl.FirstChildElement().FirstChildElement().Element();
user cl;
if(!elem)
{
cerr << "le noeud à atteindre n'existe pas" << endl;
return 2;
}
while (elem)
{
cl.name = elem->Attribute("name");
cl.pass = elem->Attribute("pass");
elem->QueryIntAttribute("indice", &cl.droits);
user_list.push_back(cl);
elem = elem->NextSiblingElement(); // iteration
}
list<user>::iterator i;
for(i=user_list.begin(); i!=user_list.end(); i++)
cout << i->name << " " << i->pass << " " << i->droits << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
D'avance, merci.
Je travail actuellement sous devc++ et je tente, à l'aide de Tinyxml, de faire une lecture d'un fichier xml.
Mais, comme l'indique le titre de ce poste, j'ai un [link error] lors de la compilation de mon programme.
Mise en place de la bibliothèque :
J'ai télécharger la bibliothèque, je l'ai compilée, placer le .a et meme le .lib dans le dossier lib de mon compilateur, j'ai placer tinyxml.h et tinystr.h dans le repertoire include de mon compilateur.
Voici mon programme :
using namespace std;
#include <cstdlib>
#include <iostream>
#include <tinyxml.h>
#include <list>
struct user
{
string name;
string pass;
int droits;
};
int main(int argc, char *argv[])
{
list<user> user_list;
TiXmlDocument doc("users.xml");
if(!doc.LoadFile())
{
cerr << "erreur lors du chargement" << endl;
cerr << "error #" << doc.ErrorId() << " : " << doc.ErrorDesc() << endl;
return 1;
}
// TiXmlElement *elem = doc.FirstChildElement()->FirstChildElement();
TiXmlHandle hdl(&doc);
TiXmlElement *elem = hdl.FirstChildElement().FirstChildElement().Element();
user cl;
if(!elem)
{
cerr << "le noeud à atteindre n'existe pas" << endl;
return 2;
}
while (elem)
{
cl.name = elem->Attribute("name");
cl.pass = elem->Attribute("pass");
elem->QueryIntAttribute("indice", &cl.droits);
user_list.push_back(cl);
elem = elem->NextSiblingElement(); // iteration
}
list<user>::iterator i;
for(i=user_list.begin(); i!=user_list.end(); i++)
cout << i->name << " " << i->pass << " " << i->droits << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
D'avance, merci.
A voir également:
- Link error
- Fan error lenovo ✓ - Forum Refroidissement
- Changer mot de passe family link - Forum Téléphones & tablettes Android
- Family link localisation - Télécharger - Guide protection
- Family link localisation impossible ✓ - Forum Applis & Sites
- Eespt technical error ✓ - Forum TNT / Satellite / Réception
1 réponse
Voilà un peu plus de précisions sur les erreurs :
[Linker error] undefined reference to 'TiXmlDocument::TiXmlDocument(char const*)'
[Linker error] undefined reference to 'TiXmlDocument::LoadFile(TiXmlEncoding)'
[Linker error] undefined reference to 'TiXmlHandle::FirstChildElement() const'
[Linker error] undefined reference to 'TiXmlHandle::FirstChildElement() const'
[Linker error] undefined reference to 'TiXmlElement::Attribute(char const*) const'
[Linker error] undefined reference to 'TiXmlElement::Attribute(char const*) const'
[Linker error] undefined reference to 'TiXmlElement::QueryIntAttribute(char const*, int*) const'
[Linker error] undefined reference to 'TiXmlNode::NextSiblingElement() const'
[Linker error] undefined reference to 'vtable for TiXmlDocument'
[Linker error] undefined reference to 'TiXmlNode::~TiXmlNode()'
[Linker error] undefined reference to 'TiXmlNode::~TiXmlNode()'
[Linker error] undefined reference to 'TiXmlString::nullrep_'
ld returned 1 exit status
M:\Cours UTEC\Developpement\PTI\Bibliothèques\TestTiny\Makefile.win [Build Error] [../tinyxml/TestTiny.exe] Error 1
[Linker error] undefined reference to 'TiXmlDocument::TiXmlDocument(char const*)'
[Linker error] undefined reference to 'TiXmlDocument::LoadFile(TiXmlEncoding)'
[Linker error] undefined reference to 'TiXmlHandle::FirstChildElement() const'
[Linker error] undefined reference to 'TiXmlHandle::FirstChildElement() const'
[Linker error] undefined reference to 'TiXmlElement::Attribute(char const*) const'
[Linker error] undefined reference to 'TiXmlElement::Attribute(char const*) const'
[Linker error] undefined reference to 'TiXmlElement::QueryIntAttribute(char const*, int*) const'
[Linker error] undefined reference to 'TiXmlNode::NextSiblingElement() const'
[Linker error] undefined reference to 'vtable for TiXmlDocument'
[Linker error] undefined reference to 'TiXmlNode::~TiXmlNode()'
[Linker error] undefined reference to 'TiXmlNode::~TiXmlNode()'
[Linker error] undefined reference to 'TiXmlString::nullrep_'
ld returned 1 exit status
M:\Cours UTEC\Developpement\PTI\Bibliothèques\TestTiny\Makefile.win [Build Error] [../tinyxml/TestTiny.exe] Error 1