Forum: Compiler & IDEs Problem mit nicht startendem Programm


von newbie (Gast)


Lesenswert?

Hallo

Ich habe mit dem C Programmieren lernen nach gut eineinhalb Jahrzehnten 
Abstinenz neu Angefangen.

Folgendes Problem:

Linux Debian etchnhalb
"Hello world" Programm unter Anjuta in C geschrieben.
Unter der Anjuta IDE läuft es im von Anjuta gestartetem Terminal.
Wenn ich das Programm von Hand im Terminal starte, passiert NICHTS.
Keine Fehlermeldung, nichts.
Ich kriege einfach nur einen neuen leeren Prompt.
Darum habe ich das Programm auch noch einmal mit gcc compiliert.
Ich erhalte a.out ohne Fehlermeldung.
Aber es laesst sich genausowenig starten wie das von Anjuta erstellte.
Ich habe alle Rechte am Programm (lesen, schreiben, ausführen).
Als root klappt es aber genausowenig.

Hier das Listing:

/* Created by Anjuta version 1.2.4a */
/*  This file will not be overwritten */

#include <stdio.h>
int main()
{
  int zaehler;
  printf("Start\n");
  for (zaehler = 1 ; zaehler < 10000 ; zaehler = zaehler + 1)
    printf("Hello world\n");
  return (0);
}



Ich persönlich glaube nicht, das es am Programm selber liegt.
Die lange Schleife ist extra eingefügt, damit ich sehen kann, ob das 
Programm auch wirklich läuft.
Es gibt ja Fälle, wo das Programm so kurz läuft, daß das Terminal sofort 
wider schliesst......ich habe aber auch direkt aus einem Terminal heraus 
versucht, das Programm zu starten.

Nun weiss ich nicht mehr weiter......

Vielen Dank im Voraus für etwaige Tipps....

Bernd

von hp-freund (Gast)


Lesenswert?

Hallo Bernd,
das Programm ist ok und startet auch in der Konsole wenn es mit gcc 
compiliert wird.
Die Frage ist vielleicht wie Du es aufrufst:

a.out

oder

./a.out

Es könnte sein das bei der ersten Variante irgend wo ein Prog a.out im 
Suchpfad aufgerufen wird und nicht das im aktuellen Pfad.

...
hp-freund

von newbie (Gast)


Lesenswert?

Hallo HP-Freund

>Es könnte sein das bei der ersten Variante irgend wo ein Prog a.out im
>Suchpfad aufgerufen wird und nicht das im aktuellen Pfad.

BINGO! Das wars! Ich habe den Eindruck, in meinem Systems liegen jetzt 
zig alte a.out´s herum.......

DANKE!

Ich geh jetzt erst mal googgeln, wie man die Suchpfade unter Debian am 
komfortabelsten einstellt.

Bernd

von hp-freund (Gast)


Lesenswert?

Hallo Bernd,
aus Sicherheitsgründen würde ich nur sehr vorsichtig etwas an der 
Pfadangabe ändern.
Du meinst sicher den aktuellen Pfad zur PATH Variable hinzufügen.
Würde ich lieber sein lassen.
Besser ein selbst comiliertes Prog immer mit ./programm aufrufen...

...
hp-freund

von hp-freund (Gast)


Lesenswert?

bitte noch ein "p" einfügen ;)

von Stefan E. (sternst)


Lesenswert?

newbie schrieb:

> BINGO! Das wars! Ich habe den Eindruck, in meinem Systems liegen jetzt
> zig alte a.out´s herum.......

Falls du alle löschen möchtest:
1
find / -name a.out -exec rm {} \; -print

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.