Właśnie zmieniłem system Windows na Ubuntu 11.10.
Napisałem następujący kod w C za pomocą edytora tekstu i zapisałem go jako HelloWorld.c w Dokumentach.
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
Uruchomiłem Terminal i wprowadziłem następujące polecenia:
cd Documents
gcc HelloWorld.c
Plik o nazwie a.out, który po pewnym wyszukiwaniu w Google jest plikiem wykonywalnym. Wprowadziłem to polecenie:
a.out
Ale rozumiem
a.out: command not found
Który krok zrobiłem źle?
+x
dla Ciebie; nie potrzebujesz chmod
pliku wykonywalnego generowanego przez kompilator. Jedyną częstą sytuacją, w której gcc
nie sprawia, że jest wykonywalny, jest tworzenie pliku w systemie plików, który go nie obsługuje lub na to nie pozwala (w takim przypadku chmod
natychmiast też się nie powiedzie). Ponadto, 777
należy unikać. Nie ma potrzeby, aby był czytelny, zapisywalny i wykonywalny przez wszystkich użytkowników; jeśli to było konieczne do uruchomienia chmod
, wtedy chmod +x a.out
byłoby wystarczające.
sudo chmod 777 a.out