Compilando o C ++ dentro de uma pasta no Ubuntu 12.04

4

Eu tenho algumas perguntas sobre a compilação de .cpp dentro de uma pasta, diz

  

first.cpp Nenhum tal arquivo ou diretório

mas quando eu corro em casa, compila. Quaisquer configurações que eu possa ter deixado de fora? Obrigado.

Aqui está a saída do Terminal ( veja maior ):

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:~$ 
    
por userIsAMonkey 26.05.2012 / 05:17

3 respostas

5

Você estava em sua pasta pessoal ( /home/law ) quando emitiu o comando g++ first.cpp . Mas first.cpp está localizado na pasta sourcecodescpp . Para compilar first.cpp , você deve inserir a pasta que a contém:

cd sourcecodescpp

(Em seguida, o arquivo de saída será, por padrão, criado dentro de sourcecodescpp .)

Ou qualifique seu nome com o nome da pasta que o contém:

g++ sourcecodescpp/first.cpp

(Em seguida, o arquivo de saída será, por padrão, criado dentro de sua pasta pessoal.)

    
por Eliah Kagan 26.05.2012 / 06:01
2

Você precisa mover (alterar o diretório, ou cd ) para o diretório sourcecodescpp , para executar / compilar qualquer arquivo lá. Por favor, corra

cd sourcecodescpp

do Terminal e agora você estará nesse diretório.

Agora você pode executar

g++ first.cpp

para compilar e

./a.out

para executar.

    
por saji89 26.05.2012 / 06:02
1

É isso mesmo, você pode dar um caminho completo para o seu arquivo cpp para evitar tal erro.

Acho que até o seguinte deve funcionar:

g++ /home/yourdirectory/first.cpp
    
por deej 26.05.2012 / 08:15