2012-01-29 5 views
-1

Je suis relativement novice en compilation et en C++, mais je l'ai fait par le passé et je n'ai pas eu ce problème auparavant. J'ai demandé à quelqu'un de programmer quelque chose pour moi et j'ai laissé des instructions sur la façon de le compiler si je devais faire des changements. J'ai d'abord « cd » dans le dossier qui contient tous les fichiers, puis je lance la commande, il m'a donné:g ++ ne compile pas mon programme C++

g++ -o filename main.cpp another.cpp aanother.cpp -L/usr/lib `mysql_config --cflags --libs` -lid3 -lcurl -lpthread 

Je reçois quelques erreurs, mais si je me souviens bien ces mêmes erreurs ont toujours été là et n'a jamais eu d'impact sur la compilation. Pour une raison quelconque, "filename" n'apparaît pas du tout dans ce dossier. Est-ce que je me trompe en ce que le nouveau programme devrait être trouvé dans le même dossier que j'ai "cd" édité dedans? Quel pourrait être le problème? Pourquoi "nom de fichier" n'est-il pas créé?

Je ne sais pas si cela va aider tout le monde, mais voici les erreurs que je suis assez sûr ne causent pas de problèmes dans le passé:

[[email protected]] folder >> g++ -o filename main.cpp another.cpp aanother.cpp -L/usr/lib `mysql_config --cflags --libs` -lid3 -lcurl -lpthread 
main.cpp:13:21: error: id3/tag.h: No such file or directory 
main.cpp:14:30: error: id3/misc_support.h: No such file or directory 
main.cpp: In function âvoid readConfig()â: 
main.cpp:679: error: variable âstd::ifstream myfileâ has initializer but incomplete type 
main.cpp:682: error: âwsâ was not declared in this scope 

Je vous remercie de l'aide.

Répondre

1

Q: Here are the errors:

g++ -o filename main.cpp another.cpp aanother.cpp -L/usr/lib `mysql_config --cflags --libs` -lid3 -lcurl -lpthread 
main.cpp:13:21: error: id3/tag.h: No such file or directory 
main.cpp:14:30: error: id3/misc_support.h: No such file or directory 

Q: Vous devez installer un package de développement ID3 (qui inclut tous les en-têtes nécessaires).

Sur mon système CentOS, je peux vérifier un paquet ID3 comme ceci:

rpm -qa|grep -i id3 

On devrait pouvoir l'installer avec une commande comme ceci:

yum install id3v2 id3lib-devel 

Si vous avez un Système Ubuntu/Debian, vous pouvez utiliser "apt-get install" ou l'interface graphique de votre gestionnaire de paquets préféré.

EDIT

Je viens d'essayer ce qui suit sur Centos 5.5:

sudo yum install id3lib id3lib-devel 

Il ne fonctionne pas:

addons             | 951 B  00:00 
base              | 1.1 kB  00:00 
c5-testing            | 951 B  00:00 
extras             | 2.1 kB  00:00 
updates             | 1.9 kB  00:00 
Setting up Install Process 
No package id3lib available. 
No package id3lib-devel available. 
Nothing to do 

donc je suppose que le RPM n'est plus supporté (au moins pour Centos): vous devez télécharger le package directement:

+0

J'ai aussi des Centos mais je reçois un "grpe: commande non trouvée". D'autres idées? –

+0

Juste réalisé que vous vouliez dire grep. J'en ai un appelé "id3lib-3.8.3-7.el5.rf". J'ai couru "yum id3v2 -libid3-devel" et cela juste énuméré les options de yum. L'exécution de "yum install id3v2" indique qu'aucun paquet id3v2 n'est disponible. –

+0

@ user371699: Il vous manque 'install' dans la commande d'installation. –

1

I do get a few errors, but if I remember correctly those same errors have always been there and never impacted the compilation.

Vous vous êtes trompé. Les erreurs signifient que la compilation ne se termine pas et qu'aucun fichier de sortie n'est généré. Corrigez les erreurs (en installant les en-têtes id3).

+0

Savez-vous s'il y a une autre solution possible, ou est que le seul problème que vous voyez? Je suis vraiment déconcerté car je suis sûr que j'ai vu les mêmes erreurs la dernière fois quand ça a marché. J'ai juste essayé d'enlever ces deux inclus et cela n'a toujours pas aidé. Je ne suis pas sûr de savoir où aller à partir de là ... –

+3

Non, s'il est dit "erreur", cela signifie "erreur". Vous pouvez toujours compiler si vous recevez des avertissements, mais si vous le faites, vous ne devriez les ignorer que si vous savez d'où proviennent ces avertissements et vous êtes sûr de pouvoir les ignorer. – Cubic

+0

@ user371699, la seule chose qui compte à un moment donné est la première erreur. Corrigez cela et recompilez - répétez jusqu'à ce qu'il compile sans erreur. Vous avez dit "j'ai juste essayé de supprimer ces deux éléments et cela n'a toujours pas aidé". Vous devez nous donner plus d'informations. Avez-vous toujours l'erreur 'main.cpp: 13: 21: erreur: id3/tag.h: Aucun fichier ou répertoire ', même après avoir supprimé ce include? Si c'est le cas, vous avez un plus gros problème - il semble que vous n'éditez pas le même fichier que vous compilez. –

Questions connexes