Keine Console unter Linux

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Keine Console unter Linux

Beitrag von CptGreenwood »

Hi,

ich will den Schritt wagen, Windows in die Tonne kloppen und Linux benutzen, obwohl ich ein absoluter Anfänger bin. Habe es zumindest hinbekommen, PB unter SuSE Linux 10.3 zu installieren und es läuft auch "prinzipiell". Sprites, Grafische Ausgabe etc. klappen prima, ich bekomme nur keine Console-Programme hin.

Das simple "Hallo Welt"-Proggie

Code: Alles auswählen

OpenConsole()
PrintN("Hallo Welt")
Input()
CloseConsole()
End
tut leider garnix. Ich starte es, es ist nichts zu sehen und dann steht unten "Execution finished". Zumidest beim Input() hätte es doch stehen bleiben müssen, oder?
Mache ich irgendetwas falsch (unter Windows lief's prima). Ich habe alle Pakete (gcc, GTK+ und SDL drauf.

Bitte Hilfe! Ich möchte nicht wegen PB bei Windows bleiben müssen...
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

sollte glaub ich gehen.
guck mal die OpenConsole()-rückgabe an, und
nimm mal ein delay(), vielleicht funktioniert nur Input() nicht

Code: Alles auswählen

Debug OpenConsole()
PrintN("Hallo Welt")
Delay(1000)
Input()
CloseConsole()
End
my pb stuff..
Bild..jedenfalls war das mal so.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Beitrag von CptGreenwood »

Hab's versucht. Klappt trotzdem nicht. Kommt die Meldung "Executable started" und dann, exakt nach der Delay-Zeit ist das Programm vorbei, ohne dass man je eine Konsole, geschweige denn eine Ausgabe gesehen hätte.
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

<) ..was hat denn Debug OpenCo.. nun ergeben?
my pb stuff..
Bild..jedenfalls war das mal so.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Beitrag von CptGreenwood »

Ergibt 1 :|
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

öö .. ää ..

unter linux hat der compiler eventuell auch entsprechende
parameter wie unter windoofs

/console gesetzt ?
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Beitrag von CptGreenwood »

Hmm, Parameter? In der Anleitung für Linux stand, man solle in das Verzeichnis "compiler" gehen und dort PureBasic aufrufen. Dann komme ich in die IDE und lege los.

Unter Windows benutze ich aber auch keine Parameter...
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Schau mal im Menu unter Compiler Option und stell mal auf "Console".
Benutzeravatar
#NULL
Beiträge: 2238
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

ich dachte wenn man OpenConsole() verwendet, braucht man nicht als konsolen-anwendung compilieren?
my pb stuff..
Bild..jedenfalls war das mal so.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

Unter Linux und OSX ist die Konsole ein separates Programm (sog. Terminal Emulator).
Man kann desshalb nicht einfach innerhalb des Programms ein Konsolefenster
öffnen, sondern die exe muss in einem Terminal gestartet werden um die
Eingabe/Ausgabe sehen zu können. Desshalb initiiert OpenConsole() hier nur
die Ausgabe für die Konsole, öffnet aber kein Fenster. Das lässt sich leider nicht ändern.

Einfach mal das erstellte Programm in einem Terminal starten, dann sollte das
auch funktionieren.

Die IDE hat aus diesem Grund auch unter Linux einen "Console" Modus in den
Compiler Optionen.
Das ändert zwar nichts am erstellten Programm (wie unter Windows), aber es veranlasst
die IDE dazu einen Terminal Emulator zu starten, und das Programm dann darin
auszuführen, damit man die Eingabe/Ausgabe beim Testen auch sieht.

note to self: Das muss mal in die Hilfe...
Antworten