2017-05-31 3 views
0

J'ai copié un code qui compile et fonctionne bien d'un ordinateur à l'autre, j'ai installé la bibliothèque GMP correctement. Je suis liant pour compiler le code via g++ -o code -I/path/to/library code.cpp -lgmpxx -lgmp, j'obtiens l'erreur invalid suffix '_mpf' on floating constant. Évidemment j'utilise _mpf, je ne comprends pas pourquoi mon code compile et fonctionne bien sur un ordinateur et pas l'autre.Erreur lors de la compilation du code en C++ en utilisant gmp

+0

Quelle version de GCC utilisez-vous? Les versions antérieures à 5 n'avaient pas C++ 11 activé par défaut, et manquaient de nombreuses fonctionnalités C++ 11 de toute façon. Et les suffixes comme celui-ci sont une fonctionnalité C++ 11. –

Répondre

3

User-defined suffixes sont une fonctionnalité C++ 11. Ajoutez à l'appel de votre compilateur.

Vous ne recevez pas d'erreur des en-têtes qui tentent de définir ces opérateurs car les opérateurs sont conditionally compiled uniquement si vous compilez avec le support C++ 11.