PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : GCC. Lazarus, FreePascal kann compilierte Programme nicht starten



Fred556
07-11-2004, 13:45
Hallo,

wenn ich ZB eine Hello World mache:

unter gcc compiliere kann ich das programm nicht starten.
Das gleiche bei Lazarus und FreePascal.

Laut UPX ist es eine linux/386 und laut KDE ausführbar. Aber beim doppelklick macht er nichts.
Warum?

Habe SUSE 9.1 Pro und fast alles installiert. Steht was von bash kein command oder soo...

Joghurt
07-11-2004, 15:46
Wie hast du das Programm kompiliert?
Und hast du es vielleicht "test" genannt? Test ist ein eingebautet shell-Befehl.

Beispiel:

#include <stdio.h>
int main(){
printf("Hallo, Welt!\n");
}
Compilieren
$ gcc test.c -o mein-programm
$ ./mein-programm
Hallo, Welt
$(Ohne -o option heißt das Ausgabefile a.out)

tooly
07-11-2004, 19:08
Hallo,

doppelklick?

Hat Dein programm denn auch eine Routine um ein Fenster zu oeffnen und den Text auszugeben?

Wie startest Du Dein Programm denn in der Konsole?

mfg
tooly

Fred556
10-11-2004, 14:48
Hallo,

nein keine verknüfung in KDE. Es geht auch in der Konsole nicht.
Steht: bash: pascal: command not found

KDE erkennt es als application. Mit UPX kann man es komprimieren und wird
als Linux/386 erkannt.

Code: Hallo welt



program pascal;

uses sysutils;

begin
writeln('Hallo Welt');
end.

Joghurt
10-11-2004, 16:34
Steht: bash: pascal: command not foundÄhhh, kompiliert hast du das Programm, oder nicht?

Wie sieht denn dein Kompilierungsaufruf und der Aufruf des Programmes aus? (siehe mein Beispiel)

Vergiß nicht, dass wir keine Hellseher sind und nicht vor deinem Computer sitzen

Fred556
11-11-2004, 09:28
hallo,

also mit freepascal.
fpc pascal.dpr

dann kommt die datei "pascal" raus.
Wurde kompiliert und kein Fehler gemeldet.

Sym
11-11-2004, 10:20
hallo,

also mit freepascal.
fpc pascal.dpr

dann kommt die datei "pascal" raus.
Wurde kompiliert und kein Fehler gemeldet.
Und wie führst Du die Datei dann aus? (Mit ./Pascal?)

Fred556
11-11-2004, 13:19
Hallo,

ich geben nur "pascal" ein.
da kommt
bash: pascal: command not found

oder bei KDE mit koppelklick passiert nichts.
Obwohkl die Datei da ist findet er sie nichts.

Ich bin bei Linux neu und weiß nicht ob man da rechte braucht.
Es ist aber Ausführbar lesen und schreibbar.

Boron
11-11-2004, 13:42
Dann gibt doch mal, wie in diesem Thread schon mehrmals geschrieben, den Befehl "./deinProgramm" in einer Konsole ein. Das setzt voraus, dass du in dem Verzeichnis bist, in dem deinProgrammi ist.

Das "./" zu Beginn ist wichtig. Es bedeutet, dass das auszuführende Programm im momentanen Verzeichnis zu finden ist, und nicht in den Pfaden der $PATH-Vaiablen.

Und das in KDE beim Doppelklick nichts passiert ist auch normal.
Es handelt sich ja um eine Konsoleanwendung. Dein Programm hat keine Routine um ein Konsolenfenster zu öffen und dort das eigentliche Programm auszuführen.
Dein Programm wird schon ausgeführt, es wird nur nicht angezeigt.