tu compiles bien sur avec g++, pas gcc ...
tu compiles bien sur avec g++, pas gcc ...
Je compile avec GNU GCC Compiler, comme sur l'autre PC, mais je ne comprend pas ces erreurs ...
Bon, je vais tout recommencer, désinstaller Code Block, redémarrer (par précautions...), réinstaller code block, redémarrer... Puis compiler Boost...
Après si ça ne fonctionne pas ben mince... Le truc avec la sérialisation est que tu la fait et c'est tout, boost se charge de la rédaction des informations dans le fichier, mais là... si je n'arrive pas à installer boost correctement...
Je vous tiens au courant.
Edit : Bon, alors j'ai fait tout cela, et plusieurs fois même, mais rien, ça compile normalement, 44 fichiers lib .a pour un total de 170MO.
J'ai tout essayé, j'ai même mis le dossier boost dans le dossier include de mon code block, puis toutes les lib de boost dans le dossier lib de Code Block, et j'obtiens, un no such file à la compilation... et le fichier existe bel et bien.
Je ne sais plus quoi faire, ça commence à être embêtant pour ne pas dire autre chose (T_T)...
Quelqu'un ne pourrait pas essayer de m'aider grâce à Team Viewer ?
Merci D'Avance.
Au Revoir.
Bonjour,
Tu dis : , mais visiblement tu étais passé à coté de :Comme beaucoup d'autres, j'ai eu récemment la même chose à faire en 1.45, puis en 1.46, et j'ai trouvé la solution ici.
As-tu essayé de faire ce qu'il est conseillé dans ce post (recompiler bjam).
Je sais que ton problème a l'air de se situer bien plus tard, aussi cela n'a peut-être aucun rapport, mais sait-on jamais.
Courage.
Re bonjour, avant que tu ne poste j'étais sur ce lien là : http://en.highscore.de/cpp/boost/ , bon, c'est en train de compiler, cela a créer un dossier Boost dans mon C:\. Dans ce dossier il y a un sous dossier include et un autre , lib, dans le dossier lib je suis à 132 éléments pour 501MO, on verra bien ce que ça donne.
Si ça ne fonctionne toujours pas , je vais appliquer ce qu'il y a sur ton lien.
Pour information c'est dans l'introduction partie installation, j'ai lancé bjam avec la ligne de commande suivante :
Je vous tien au courant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part bjam --toolset=gcc --build-type=complete install
-------------------------------------------------------
Edit : Après près de deux heures de compilation (je n'ai pas compté ^^), j'obtiens 336 fichiers dans le dossier lib(qui contient aussi des dll) de 965MO au total.
Bon j'ai copier le dossier boost obtenu dans le dossier include de Code Block et j'ai mis les lib dans le dossier lib de Code Block.
A la compilation, j'ai un No Such File... (-_-'), j'ai bien vérifié les fichiers existent bien dans l'include de Code Block...
Vraiment à ne rien comprendre...
Bon, les no such file ont disparu, maintenant je retombe sur les erreurs de départ... Pourtant j'ai bien le dossier boost dans le dossier include de code block et les lib dans le dossier lob de code block...
Erreur :
...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 ||=== Entrainement, Release ===| main.cpp||undefined reference to `boost::archive::detail::basic_oserializer::~basic_oserializer()'| main.cpp||undefined reference to `boost::archive::detail::basic_iserializer::~basic_iserializer()'| main.cpp||undefined reference to `boost::serialization::extended_type_info::key_unregister() const'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_unregister()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'| main.cpp||undefined reference to `boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::text_oarchive_impl(std::ostream&, unsigned int)'| main.cpp||undefined reference to `boost::archive::detail::basic_oserializer::basic_oserializer(boost::serialization::extended_type_info const&)'| main.cpp||undefined reference to `boost::archive::detail::basic_oarchive::save_object(void const*, boost::archive::detail::basic_oserializer const&)'| main.cpp||undefined reference to `boost::archive::detail::basic_oarchive::~basic_oarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()'| main.cpp||undefined reference to `boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::text_iarchive_impl(std::istream&, unsigned int)'| main.cpp||undefined reference to `boost::archive::detail::shared_ptr_helper::shared_ptr_helper()'| main.cpp||undefined reference to `boost::archive::detail::basic_iserializer::basic_iserializer(boost::serialization::extended_type_info const&)'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&)'| main.cpp||undefined reference to `boost::archive::detail::shared_ptr_helper::~shared_ptr_helper()'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'| main.cpp||undefined reference to `boost::archive::detail::shared_ptr_helper::~shared_ptr_helper()'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'| main.cpp||undefined reference to `boost::serialization::extended_type_info::key_register() const'| main.cpp||undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'| main.cpp||undefined reference to `boost::archive::detail::basic_oarchive::~basic_oarchive()'| main.cpp||undefined reference to `boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()'| main.cpp||undefined reference to `boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'| main.cpp||undefined reference to `boost::serialization::extended_type_info::key_register() const'| main.cpp||undefined reference to `boost::archive::detail::basic_iserializer::basic_iserializer(boost::serialization::extended_type_info const&)'| main.cpp||undefined reference to `boost::archive::detail::basic_oserializer::basic_oserializer(boost::serialization::extended_type_info const&)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'| main.cpp||undefined reference to `boost::serialization::extended_type_info::key_register() const'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'| main.cpp||undefined reference to `boost::serialization::extended_type_info::key_register() const'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'| main.cpp||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'| ||More errors follow but not being shown.| ||Edit the max errors limit in compiler options...| ||=== Build finished: 50 errors, 0 warnings ===|
Tu as configuré le chemin des libs, mais as-tu ajouté les libs concernées au projet ? Les fonctions d'autolink de boost ne marchent qu'avec visual C++.
Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.
Non je ne l'avais pas fait, en pensant que comme les lib étaient dans le dossier lib de Code Block, que ça aurait été fait automatiquement...
Mais bon, avec 337 fichier lib, ça va être très long de mettre tout ça...
Il n'y a nul par où il est indiqué quelles lib linker par rapport à ce qu'on utilise (sérialization, archive par exemple ?) ?
Bonjour,
Certaines des docs indiquent ce qu'il faut link, mais pas toutes. Cependant les noms des fichiers sont quand même assez explicite il me semble.
Bon alors j'ai ajouté les lib, voila un screen :
http://www.hostingpics.net/viewer.php?id=816619aaa.png
Comme on peut le voir, lors de la compilation j'ai un "can not find......"......
...
Déjà, tu dois plutôt mettre ça dans la boîte de gauche.
Ensuite, une seule lib pour la sérialisation, pas plusieurs. Laquelle ? Ca dépend de tes options de compilation. http://www.boost.org/doc/libs/1_46_1...library-naming
Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.
J'ai choisis de compiler en static, voila, "can not find..."
http://hpics.li/b84c73b
(Excusez-moi si je suis chian, je n'ai pas beaucoup d'expérience...)
Tu l'as ajouté à la main ? Essaies en cliquant sur add et en allant chercher le fichier.
Re bonjour, effectivement, je tappais le nom des fichiers manuellement... Bon, donc les fichiers hpp de boost sont trouvés et inclus normalement. Je compile du code et j'ai juste ces deux erreurs :
Je pense que le problème est pratiquement résolu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 archive_exception.cpp||multiple definition of `boost::archive::archive_exception::~archive_exception()'| archive_exception.cpp||multiple definition of `boost::archive::archive_exception::archive_exception(boost::archive::archive_exception::exception_code, char const*, char const*)'| ||=== Build finished: 2 errors, 0 warnings ===|
Re bonjour tout le monde, j'ai réussi à installer Boost et la sérialisation se déroule bien...
Merci de m'avoir aidé !!!
Au Revoir.
Partager