Запуск файла C ++ на Терминале в Ubuntu - PullRequest
0 голосов
/ 17 января 2019

Я новичок в C ++.
Я создал файл C ++ с Gedit в Ubuntu. Но когда я пытался запустить его на терминале, он говорит

нет такого файла или каталога

Когда я набрал ls в Терминале, это показывает, что файл c ++ не был создан вообще.

Где я ошибся?

  1. сохранил файл с .cpp с gedit на моем рабочем столе.
  2. Пошел в терминал и набрал что-то вроде g++ -o test file name.cpp.
  3. Затем мне было показано сообщение об ошибке «нет такого файла или каталога».

Это мой код:

#include <iostream>

using namespace std;

int main()
{
   cout << "Hello World\n";
   return 0;
}

1 Ответ

0 голосов
/ 17 января 2019

Сначала вы должны найти каталог, в который вы сохранили исходный файл из gedit . Файл-> Сохранить как - это одно место, где отображается каталог, и, вероятно, в этом меню также есть действие «Свойства файла», которое также показывает путь. В командной строке используйте cd для перехода в этот каталог перед выполнением команды компиляции.

Вы можете использовать ls, чтобы увидеть, содержит ли каталог ожидаемые файлы, как вы уже сделали. pwd полезно для отображения полного пути вашего текущего рабочего каталога. В общем, было бы очень полезно, если бы вы сделали учебник по Linux-терминалу или два, чтобы научиться работать с командной строкой терминала unix.


Тогда, похоже, в вашем имени файла есть пробелы: g++ -o test file name.cpp Немного неясно, что именно, но я полагаю, вы хотите это:

g++ -o test 'file name.cpp'

В терминалах Unixy оболочка (вероятно, у вас bash ) отвечает за разбиение аргументов командной строки, и это по умолчанию происходит в пробелах. Если у вас есть один пробел в одном аргументе (например, имя файла), вы должны сделать так, чтобы оболочка не разделяла этот аргумент на два. Есть несколько способов сделать это, одиночные кавычки, как указано выше, - это всего лишь один, но это широкий вопрос и далеко за пределы этого ответа.

...