web-dev-qa-db-fra.com

Compiler C ++ dans un dossier dans Ubuntu 12.04

J'ai une question sur la compilation. Cpp dans un dossier, il est dit

first.cpp Aucun fichier ou répertoire de ce type

mais quand je le lance à la maison, il se compile. Avez-vous oublié certains paramètres? Merci.

Voici la sortie du terminal ( la agrandir ): enter image description here

law@ubuntu:~$ ls
Android-sdk   Downloads         Pictures        test        wallpapers
Android-sdks  Eclipse           Public          Tomcat      workspace
Desktop       examples.desktop  sourcecodescpp  Ubuntu One
Documents     Music             Templates       Videos
law@ubuntu:~$ dir sourcecodescpp
first.cpp
law@ubuntu:~$ g++ first.cpp
g++: error: first.cpp: No such file or directory
g++: fatal error: no input files
compilation terminated.
law@ubuntu:~$ ./a/out
bash: ./a/out: No such file or directory
law@ubuntu:~$ ls
Android-sdk   Downloads         Pictures        test        wallpapers
Android-sdks  Eclipse           Public          Tomcat      workspace
Desktop       examples.desktop  sourcecodescpp  Ubuntu One
Documents     Music             Templates       Videos
law@ubuntu:~$ dir ls
dir: cannot access ls: No such file or directory
law@ubuntu:~$ ls
Android-sdk   Downloads         Music           Templates   Videos
Android-sdks  Eclipse           Pictures        test        wallpapers
Desktop       examples.desktop  Public          Tomcat      workspace
Documents     first.cpp         sourcecodescpp  Ubuntu One
law@ubuntu:~$ g++ first.cpp
law@ubuntu:~$ ./a.out
Hello World!law@ubuntu:~$ ^C
law@ubuntu:~$ ^C
law@ubuntu:~$ 
4
userIsAMonkey

Vous étiez dans votre dossier personnel (/home/law) lorsque vous avez émis la commande g++ first.cpp. Mais first.cpp se trouve dans le dossier sourcecodescpp. Pour compiler first.cpp, vous devez soit entrer le dossier qui le contient:

cd sourcecodescpp

(Le fichier de sortie sera alors créé par défaut dans sourcecodescpp.)

Ou qualifiez son nom avec le nom du dossier qui le contient:

g++ sourcecodescpp/first.cpp

(Le fichier de sortie sera alors créé par défaut dans votre dossier personnel.)

5
Eliah Kagan

Vous devez d'abord déplacer (changement de répertoire ou cd) dans le répertoire sourcecodescpp pour exécuter/compiler tous les fichiers qu'il contient. Pour cela s'il vous plaît courir

cd sourcecodescpp

à partir du terminal et maintenant vous serez dans ce répertoire.

Maintenant tu peux courir

g++ first.cpp

compiler et

./a.out

courir.

2
saji89

C'est vrai, vous pouvez donner le chemin complet à votre fichier cpp pour éviter une telle erreur.

Je pense que même après devrait fonctionner:

g++ /home/yourdirectory/first.cpp
1
deej