Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie można wykonać pliku wykonywalnego
Forum PHP.pl > Inne > Komputery i oprogramowanie
230005
Ten właśnie komunikat otrzymuję kiedy próbuję uruchomić swój pierwszy program w c napisany pod linuxem smile.gif. Oczywiście nadałem mu prawa do wykonywania. Jakieś pomysły?
blooregard
Jakiś listing? I czym kompilujesz?
230005
Program to zwykłe hello world smile.gif

  1.  
  2. #include<sdtio.h>
  3.  
  4. int main() {
  5. printf("aaa");
  6. return 0;
  7. }
  8.  


Jak nie trudno się domyślić żadnych błędów kompilator - gcc - nie wyrzuca.
blooregard
Czy podajesz jako argument dla gcc opcję -o nazwa_pliku ?
Cytat
gcc -o wykonywalny zrodlowy.c


-o daje Ci w wyniku plik wykonywalny (ELF Executable), inaczej dostaniesz jedynie plik a.out, który jest jedynie rezultatem kompilacji i linkowania, ale nie jest programem wykonywalnym.
230005
Wiem, robię tak:

gcc -c test.c -o progs.exe
blooregard
No to robisz źle.

1. argumentem dla opcji -o jest nazwa pliku wykonywalnego
2. po jakiego grzyba dodajesz to .exe na końcu? To nie Windows

gcc -o [NAZWA_PLIKU_WYKONYWALNEGO] [PLIK_ZRODLOWY.c]

czyli:

gcc -o progs test.c
chmod +x progs
./progs

aaa

smile.gif
230005
Dżizaz biggrin.gif. Ale mam usprawiedliwienie - korzystałem z materiałów pochodzących od wykładowcy więc uznałem że w googlach nic mądrzejszego nie znajdę.
blooregard
Jeśli chodzi o Linuksa, najlepszym google jest man smile.gif
man gcc
thek
W Linuxie najlepszymi nauczycielami są:
man szukana_rzecz
program -h
program --help
Te dwa ostatnie nie zawsze występują, ale dobrze świadczą o programiście tworzącym program z jakim pracujesz smile.gif
darko
i jeszcze:
apropos szukana_rzecz
Zbłąkany
A info lub zawartość katalogu /usr/share/doc ? A strona man o gcc jest moim zdaniem zbyt obszerna tongue.gif
@blooregard: może dlatego .exe, że niektóre programy mają sporo plików wykonywalnych i najważniejsze z nich oznacza się skrótem .exe? Poza tym sporo programów obliczeniowych posiada takie nazwy plików wykonywalnych. Powodem jest to, że źródła są często pod Windows'a i Linux'a smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.