GCC & Raspberry: Programmaufruf

Gast #5331318
Lesenswert?
• ▲
▼
Das Programm unten habe ich auf einem Raspberry (OS Raspbian) direkt im 
Terminal eingeben und kompiliert. Funktioniert.

Obwohl ich im Verzeichnis /tmp bin, kann ich das Programm nur mit 
./hello aufrufen, mit hello allein geht es nicht.

So steht such im Wiki:

http://linuxwiki.de/ProgrammeStarten

Was ist der (tiefere) Grund?
1
cd /tmp
2
cat <<EOF > main.c
3
#include <stdio.h>
4

5
int main() {
6
    printf("Hello World\n");
7
    return 0;
8
}
9
EOF
10
gcc -o hello main.c
11
./hello # Press Enter to execute your program
#5331332
Lesenswert?
• ▲
▼
Die Shell schaut in allen Ordnern nach, die in der PATH Variable 
gelistet sind. Dein jeweils aktueller Ordner ist es nicht. Der aktuelle 
Ordner lässt sich durch den Punkt "." ansprechen (wie z.B. zei Punkte 
".." den übergeordneten Ordner bezeichnen).

Siehe:
echo $PATH

Du kannst den aktuellen Ordner mit in die PATH Variable aufnehmen
PATH=${PATH}:.

dann sollte der Aufruf auch ohne ./ gehen.

Gerhard
#5331371
Lesenswert?
• ▲
▼
Gerhard Z. schrieb:
> Die Shell schaut in allen Ordnern nach, die in der PATH Variable
> gelistet sind. Dein jeweils aktueller Ordner ist es nicht.

Und das hat einen guten Grund. Mit '.' im $PATH kann man viel 
Schindluder treiben, wenn man z.B. im $home ein eigenes "ls" als Binary 
hat.

Das ist eine dicke Sicherheitslücke. Man sollte sich lieber das 
./programmname angewöhnen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.