Bonjour,

Je reprend un projet au sein de ma boite qui est pour ainsi dire un ..... de programme de ..... .

Bref j'en viens au but :

Lors de la compilation du programme (crée sous GCC 2.95 ) un tas de message d'erreur apparait.(Je montrerais ces messages par la suite)

J'ai donc créer un petit bout de code qui fait appel à cette libraire et en voici les premières dizaines d'erreur retournée lors de la compilation :

Main.cpp

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
#include <iostream>
#include <vector>
using namespace std;
 
template <typename T>
class MyClass 
{
    public:
        static std::vector <T> MyVector;
};
 
int main()
{
   MyClass<int>::MyVector = {17};
   cout<<"Sa marche"<<endl;
 
   return 0;
}

Commande de compilation => g++ -c main.cpp -o prog
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
In file included from /usr/include/c++/4.6/stl_string_fwd.h:20:0,
                 from /usr/include/c++/4.6/string:18,
                 from /usr/include/c++/4.6/bits/locale_classes.h:42,
                 from /usr/include/c++/4.6/bits/ios_base.h:43,
                 from /usr/include/c++/4.6/ios:43,
                 from /usr/include/c++/4.6/ostream:40,
                 from /usr/include/c++/4.6/iostream:40,
                 from main.cpp:1:
/usr/include/c++/4.6/char_traits.h:115:27: erreur: an explicit specialization must be preceded by 'template <>'
/usr/include/c++/4.6/char_traits.h:140:27: erreur: an explicit specialization must be preceded by 'template <>'
In file included from /usr/include/c++/4.6/string:22:0,
                 from /usr/include/c++/4.6/bits/locale_classes.h:42,
                 from /usr/include/c++/4.6/bits/ios_base.h:43,
                 from /usr/include/c++/4.6/ios:43,
                 from /usr/include/c++/4.6/ostream:40,
                 from /usr/include/c++/4.6/iostream:40,
                 from main.cpp:1:
/usr/include/c++/4.6/stdexcept:26:55: erreur: expected class-name before '{' token
In file included from /usr/include/c++/4.6/stl_algobase.h:45:0,
                 from /usr/include/c++/4.6/memory:18,
                 from /usr/include/c++/4.6/string:24,
                 from /usr/include/c++/4.6/bits/locale_classes.h:42,
                 from /usr/include/c++/4.6/bits/ios_base.h:43,
                 from /usr/include/c++/4.6/ios:43,
                 from /usr/include/c++/4.6/ostream:40,
                 from /usr/include/c++/4.6/iostream:40,
                 from main.cpp:1:
/usr/include/c++/4.6/type_traits.h:96:28: erreur: an explicit specialization must be preceded by 'template <>'
 
/usr/include/c++/4.6/stl_iterator.h:852:3: erreur: 'istream' does not name a type
/usr/include/c++/4.6/stl_iterator.h:868:27: erreur: expected ')' before '&' token
/usr/include/c++/4.6/stl_iterator.h: In member function 'void istream_iterator<_Tp, _Dist>::_M_read()':
J'en passe et des meilleurs, d'après mes recherches il existe un problème de compatibilité entre la STL et GCC (le compilateur) depuis la version 4.5.