Bonjour, pour un projet personnel j'ai besoin de la sérialisation.

Installation à priori pas de soucis mais dès que j'essaye l'exemple proposé

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
#include <fstream>
 
#include <boost/archive/text_oarchive.hpp>
#include <boost/archive/text_iarchive.hpp>
 
class Note
{
private:
        friend class boost::serialization::access;
 
        template<class Archive>
        void serialize(Archive & ar, const unsigned int version) {
                ar & numerateur;
                ar & denominateur;
        }
 
        int numerateur;
        int denominateur;
public:
        Note() {};
        Note(int n, int d) :
                        numerateur(n), denominateur(d) {}
};
 
 
int main()
{
        std::ofstream ofs("fichierDeSerialisation");
 
        // Vous avez vu comme je travaille bien ? :)
        const Note maNoteDePhysisque(20,20);
 
 
        {
                boost::archive::text_oarchive oa(ofs);
                oa << maNoteDePhysisque;
        }
 
        /** Quelque temps plus tard… ***/
 
        Note monAncienneNote;
 
        {
                std::ifstream ifs("fichierDeSerialisation");
                boost::archive::text_iarchive ia(ifs);
 
                ia >> monAncienneNote;
        }
 
        return 0;
}
J'obtient les erreurs suivante a la compilation

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
||=== Test, Debug ===|
obj/Debug/main.o||In function `text_oarchive':|
/usr/include/boost/archive/text_oarchive.hpp|100|undefined reference to `boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::text_oarchive_impl(std::basic_ostream<char, std::char_traits<char> >&, unsigned int)'|
obj/Debug/main.o||In function `text_iarchive':|
/usr/include/boost/archive/text_iarchive.hpp|141|undefined reference to `boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::text_iarchive_impl(std::basic_istream<char, std::char_traits<char> >&, unsigned int)'|
/usr/include/boost/archive/text_iarchive.hpp|141|undefined reference to `boost::archive::detail::shared_ptr_helper::shared_ptr_helper()'|
obj/Debug/main.o||In function `~text_iarchive':|
/usr/include/boost/archive/text_iarchive.hpp|143|undefined reference to `boost::archive::detail::shared_ptr_helper::~shared_ptr_helper()'|
obj/Debug/main.o||In function `~text_oarchive_impl':|
/usr/include/boost/archive/text_oarchive.hpp|85|undefined reference to `boost::archive::basic_text_oprimitive<std::basic_ostream<char, std::char_traits<char> > >::~basic_text_oprimitive()'|
/usr/include/boost/archive/text_oarchive.hpp|85|undefined reference to `boost::archive::basic_text_oprimitive<std::basic_ostream<char, std::char_traits<char> > >::~basic_text_oprimitive()'|
obj/Debug/main.o||In function `~text_iarchive_impl':|
/usr/include/boost/archive/text_iarchive.hpp|92|undefined reference to `boost::archive::basic_text_iprimitive<std::basic_istream<char, std::char_traits<char> > >::~basic_text_iprimitive()'|
/usr/include/boost/archive/text_iarchive.hpp|92|undefined reference to `boost::archive::basic_text_iprimitive<std::basic_istream<char, std::char_traits<char> > >::~basic_text_iprimitive()'|
obj/Debug/main.o||In function `~common_oarchive':|
/usr/include/boost/archive/detail/common_oarchive.hpp|35|undefined reference to `boost::archive::detail::basic_oarchive::~basic_oarchive()'|
obj/Debug/main.o||In function `~common_iarchive':|
/usr/include/boost/archive/detail/common_iarchive.hpp|38|undefined reference to `boost::archive::detail::basic_iarchive::~basic_iarchive()'|
obj/Debug/main.o||In function `void boost::archive::detail::save_non_pointer_type<boost::archive::text_oarchive>::save_standard::invoke<Note>(boost::archive::text_oarchive&, Note const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|253|undefined reference to `boost::archive::detail::basic_oarchive::save_object(void const*, boost::archive::detail::basic_oserializer const&)'|
obj/Debug/main.o||In function `void boost::archive::detail::load_non_pointer_type<boost::archive::text_iarchive>::load_standard::invoke<Note>(boost::archive::text_iarchive&, Note const&)':|
/usr/include/boost/archive/detail/iserializer.hpp|387|undefined reference to `boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&)'|
obj/Debug/main.o||In function `oserializer':|
/usr/include/boost/archive/detail/oserializer.hpp|112|undefined reference to `boost::archive::detail::basic_oserializer::basic_oserializer(boost::serialization::extended_type_info const&)'|
obj/Debug/main.o||In function `~oserializer':|
/usr/include/boost/archive/detail/oserializer.hpp|133|undefined reference to `boost::archive::detail::basic_oserializer::~basic_oserializer()'|
obj/Debug/main.o||In function `iserializer':|
/usr/include/boost/archive/detail/iserializer.hpp|133|undefined reference to `boost::archive::detail::basic_iserializer::basic_iserializer(boost::serialization::extended_type_info const&)'|
obj/Debug/main.o||In function `~iserializer':|
/usr/include/boost/archive/detail/iserializer.hpp|158|undefined reference to `boost::archive::detail::basic_iserializer::~basic_iserializer()'|
obj/Debug/main.o||In function `extended_type_info_typeid':|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|87|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::extended_type_info_typeid_0(char const*)'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|89|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_register(std::type_info const&)'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|90|undefined reference to `boost::serialization::extended_type_info::key_register() const'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|87|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'|
obj/Debug/main.o||In function `~extended_type_info_typeid':|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|93|undefined reference to `boost::serialization::extended_type_info::key_unregister() const'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|94|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::type_unregister()'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|95|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'|
/usr/include/boost/serialization/extended_type_info_typeid.hpp|95|undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::~extended_type_info_typeid_0()'|
]+0x10)||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::is_less_than(boost::serialization::extended_type_info const&) const'|
]+0x18)||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::is_equal(boost::serialization::extended_type_info const&) const'|
]+0x10)||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::is_less_than(boost::serialization::extended_type_info const&) const'|
]+0x18)||undefined reference to `boost::serialization::typeid_system::extended_type_info_typeid_0::is_equal(boost::serialization::extended_type_info const&) const'|
]+0x18)||undefined reference to `typeinfo for boost::serialization::typeid_system::extended_type_info_typeid_0'|
]+0x10)||undefined reference to `typeinfo for boost::archive::detail::basic_iserializer'|
]+0x10)||undefined reference to `typeinfo for boost::archive::detail::basic_oserializer'|
]+0x18)||undefined reference to `typeinfo for boost::archive::detail::basic_iarchive'|
]+0x18)||undefined reference to `typeinfo for boost::archive::detail::basic_oarchive'|
obj/Debug/main.o||In function `boost::archive::text_iarchive& boost::archive::detail::interface_iarchive<boost::archive::text_iarchive>::operator>><boost::archive::class_name_type>(boost::archive::class_name_type&)':|
/usr/include/boost/archive/detail/interface_iarchive.hpp|60|undefined reference to `boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::load_override(boost::archive::class_name_type&, int)'|
obj/Debug/main.o||In function `boost::archive::text_iarchive& boost::serialization::smart_cast_impl::reference<boost::archive::text_iarchive&>::polymorphic::cross::cast<boost::archive::detail::basic_iarchive>(boost::archive::detail::basic_iarchive&)':|
/usr/include/boost/serialization/smart_cast.hpp|78|undefined reference to `typeinfo for boost::archive::detail::basic_iarchive'|
obj/Debug/main.o||In function `boost::archive::text_oarchive& boost::serialization::smart_cast_impl::reference<boost::archive::text_oarchive&>::polymorphic::cross::cast<boost::archive::detail::basic_oarchive>(boost::archive::detail::basic_oarchive&)':|
/usr/include/boost/serialization/smart_cast.hpp|78|undefined reference to `typeinfo for boost::archive::detail::basic_oarchive'|
obj/Debug/main.o||In function `void boost::archive::save_access::save_primitive<boost::archive::text_oarchive, boost::archive::version_type>(boost::archive::text_oarchive&, boost::archive::version_type const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|87|undefined reference to `boost::archive::detail::basic_oarchive::end_preamble()'|
obj/Debug/main.o||In function `void boost::archive::save_access::save_primitive<boost::archive::text_oarchive, boost::archive::object_id_type>(boost::archive::text_oarchive&, boost::archive::object_id_type const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|87|undefined reference to `boost::archive::detail::basic_oarchive::end_preamble()'|
obj/Debug/main.o||In function `void boost::archive::save_access::save_primitive<boost::archive::text_oarchive, boost::archive::object_reference_type>(boost::archive::text_oarchive&, boost::archive::object_reference_type const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|87|undefined reference to `boost::archive::detail::basic_oarchive::end_preamble()'|
obj/Debug/main.o||In function `void boost::archive::save_access::save_primitive<boost::archive::text_oarchive, boost::archive::class_id_type>(boost::archive::text_oarchive&, boost::archive::class_id_type const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|87|undefined reference to `boost::archive::detail::basic_oarchive::end_preamble()'|
obj/Debug/main.o||In function `void boost::archive::save_access::save_primitive<boost::archive::text_oarchive, boost::archive::class_id_reference_type>(boost::archive::text_oarchive&, boost::archive::class_id_reference_type const&)':|
/usr/include/boost/archive/detail/oserializer.hpp|87|undefined reference to `boost::archive::detail::basic_oarchive::end_preamble()'|
obj/Debug/main.o:/usr/include/boost/archive/detail/oserializer.hpp|87|more undefined references to `boost::archive::detail::basic_oarchive::end_preamble()' follow|
obj/Debug/main.o||In function `void boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::save<boost::archive::object_id_type>(boost::archive::object_id_type const&)':|
/usr/include/boost/archive/text_oarchive.hpp|60|undefined reference to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()'|
obj/Debug/main.o||In function `void boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::save<boost::archive::object_reference_type>(boost::archive::object_reference_type const&)':|
/usr/include/boost/archive/text_oarchive.hpp|60|undefined reference to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()'|
obj/Debug/main.o||In function `void boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::save<boost::archive::class_id_type>(boost::archive::class_id_type const&)':|
/usr/include/boost/archive/text_oarchive.hpp|60|undefined reference to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()'|
obj/Debug/main.o||In function `void boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::save<boost::archive::class_id_reference_type>(boost::archive::class_id_reference_type const&)':|
/usr/include/boost/archive/text_oarchive.hpp|60|undefined reference to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()'|
obj/Debug/main.o||In function `void boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::save<boost::archive::tracking_type>(boost::archive::tracking_type const&)':|
/usr/include/boost/archive/text_oarchive.hpp|60|undefined reference to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()'|
obj/Debug/main.o:/usr/include/boost/archive/text_oarchive.hpp|60|more undefined references to `boost::archive::basic_text_oarchive<boost::archive::text_oarchive>::newtoken()' follow|
obj/Debug/main.o||In function `void boost::archive::basic_text_oprimitive<std::basic_ostream<char, std::char_traits<char> > >::save<boost::archive::object_id_type>(boost::archive::object_id_type const&)':|
/usr/include/boost/archive/basic_text_oprimitive.hpp|89|undefined reference to `boost::archive::archive_exception::archive_exception(boost::archive::archive_exception::exception_code, char const*, char const*)'|
/usr/include/boost/archive/basic_text_oprimitive.hpp|89|undefined reference to `boost::archive::archive_exception::~archive_exception()'|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|
J'y comprend pas grand chose une aide serais plus que bienvenue

C'est mon premier vrais projet en c++ jusqu'ici je n'ai fait que des petits programmes simple

Merci d'avance

Lepton_42

IDE : Code::Block
OS : Kubuntu 12.10