Unter Linux kompilieren - a.out nicht ausführbar.
-
Hallo,
ich habe erst seit kurzem ein Linux (Ubuntu 6.06 LTS) auf meiner zweiten Platte und
bin etwas ratlos, was den Umgang mit dem g++ angeht. Eigentlich müsste doch eing++ main.cpp
auf der Konsole eine a.out erstellen, die dann ausführbar ist?
Bei mir kompiliert er zwar ohne zu beanstanden (ist ja auch nur ein simples helloWorld, spuckt auch eine a.out aus, die ich aber weder über die Konsole noch
über einen Filebrowser ausführen kann. Hab ich da irgendetwas übersehen?
-
chmod u+x a.out
-
g++ -o blaaa main.cpp -lstdc++ -O2
-
g++ main.cpp reicht völlig. Wenn da beim ausführen permission denied kommt liegts vermutlich am Dateisystem (FAT?).
-
Häng mal ein ./ (also "./a.out")vor deine a.out falls er sie nicht findet.
Ansonsten "chmod u+x a.out" wenn er sie nicht ausführen kann.Falls beides nicht klappt poste mal die Fehlermeldung die er bringt, wenn du sie
ausführst. Das es mit dem filebrowser nicht geht ist normal (jedenfalls bei mir
:)). Falls du garkeine Fehlermeldung erhälts versuch mal cout << "Hallo Welt" << endl;anonsten hilft dir "man g++" im umgang mit dem g++ weiter,
mit -o z.B. spezifiziert man die ausgabedatei.
-
DrGreenthumb schrieb:
g++ main.cpp reicht völlig. Wenn da beim ausführen permission denied kommt liegts vermutlich am Dateisystem (FAT?).
Nicht immer. Auf SUSE hat es gereicht. Auf meinem jetzigen Debian muss ich -lstdc++ anhängen, sonst hagelt es Fehlermeldungen.
( Liegt wahrscheinlich am linkerscript oder wie es heisst aber sicher ist sicher )
-
Wenn du gcc oder g++ benutzt? Sollte eigentlich nicht so sein und war auf allen Debian Rechnern die ich benutzt habe nicht so.
-
Kann ich bestätigen. gcc linkt immer die libc und g++ immer zusätzlich die stdc++, wenn der Distributor nichts verpfuscht hat (und das hat er weder bei Sarge noch bei Etch).
-
kingruedi schrieb:
Wenn du gcc oder g++ benutzt? Sollte eigentlich nicht so sein und war auf allen Debian Rechnern die ich benutzt habe nicht so.
Ach hab mich geirrt. Jetzt gehts. Muss wohl damals denn gcc bei c++ progs genutzt haben oder so änlich. Zumindest gehts jetzt.