Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
PQ Discord Server: #planetquake Spenden? Hier entlang!
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.
PQ Discord Server: #planetquake Spenden? Hier entlang!
Programme ausführen?
Programme ausführen?
Guten Abend miteinander,
ich bin etwas verwirrt. Nachdem ich endlich verstanden habe, wie man den GCC dazu bringt, Programme zu linken, kriege ich Linux nicht dazu, das neue Programm auch auszuführen.
Ich hab ein einfaches Hello World Programm geschrieben, das garantiert ohne Fehler ist (da kann man ja wohl kaum viel falsch machen). Doch egal wie ich es anpack, die Konsole will hello.exe nicht ausführen. Immer bekomme ich folgende Fehlermeldung:
bash: hello.exe: command not found
Was muss ich machen, damit er das Ding ausführt?
ich bin etwas verwirrt. Nachdem ich endlich verstanden habe, wie man den GCC dazu bringt, Programme zu linken, kriege ich Linux nicht dazu, das neue Programm auch auszuführen.
Ich hab ein einfaches Hello World Programm geschrieben, das garantiert ohne Fehler ist (da kann man ja wohl kaum viel falsch machen). Doch egal wie ich es anpack, die Konsole will hello.exe nicht ausführen. Immer bekomme ich folgende Fehlermeldung:
bash: hello.exe: command not found
Was muss ich machen, damit er das Ding ausführt?
-
- Razor
- Beiträge: 1962
- Registriert: Aug 2000
- Wohnort: Aachen
Joar also erstens .exe is ja wohl
Und nochwas zur Erläuterung: es ist möglich, auf das ./ vor dem Programmnamen zu verzichten, wenn du das Verzeichnis in dem es sich befindet im PATH hast. Das ist bei Entwicklungsverzeichnissen zu 99% nicht der Fall, also musst du der Shell sagen wo sie das Programm zu suchen hat. Der Punkt referenziert dabei das aktuelle Verzeichnis, der Slash sagt, dass darin was zu suchen ist und dann schließlich der Programmname.
Zum Kompilieren solltest du Stones Anweisung folgen, "-o hello" bedeutet, dass der output (also dein fertiges Programm) hello heißen soll anstelle des Standardnamens a.out
Und nochwas zur Erläuterung: es ist möglich, auf das ./ vor dem Programmnamen zu verzichten, wenn du das Verzeichnis in dem es sich befindet im PATH hast. Das ist bei Entwicklungsverzeichnissen zu 99% nicht der Fall, also musst du der Shell sagen wo sie das Programm zu suchen hat. Der Punkt referenziert dabei das aktuelle Verzeichnis, der Slash sagt, dass darin was zu suchen ist und dann schließlich der Programmname.
Zum Kompilieren solltest du Stones Anweisung folgen, "-o hello" bedeutet, dass der output (also dein fertiges Programm) hello heißen soll anstelle des Standardnamens a.out
[small]Viele Namen habe ich in vielen Ländern. Mithrandir heiße ich bei den Elben, Tharkûn bei den Zwergen;
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.
J.R.R. Tolkien - The Lord Of The Rings[/small]
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.
J.R.R. Tolkien - The Lord Of The Rings[/small]
-
- Slash
- Beiträge: 678
- Registriert: Jan 2004
- Wohnort: Wörgl / Tirol / Austria
Vielen Dank, werds nacher gleich mal ausprobieren.
Und .exe, weil ich das a) von Windows noch gewohnt bin und b) weil executable mir durchaus einleuchtet als "ausführbahres Programm". binary ist imo viel schwammiger, weil bei einem Computer bekanntlich alles binär ist. Ich könnte jede Datei als binary bezeichnen...
Ich hab gern übersicht. Ich kanns nicht leiden, wenn ich in tausend Ordnern tausend Dateien hab, die nach einem x-beliebigen Muster benannt sind und die mir dann in 2 Wochen nicht mehr sagen, worums eigentlich geht.Original erstellt von ap0calypse
Meine Worte ... Wieso .exe nennen?
Und .exe, weil ich das a) von Windows noch gewohnt bin und b) weil executable mir durchaus einleuchtet als "ausführbahres Programm". binary ist imo viel schwammiger, weil bei einem Computer bekanntlich alles binär ist. Ich könnte jede Datei als binary bezeichnen...
Extension ist sinnvoll, damit man weiß was man dafür braucht.
Wenn man ein Shell-Skript foo nennt und ein Perl-Skript bar nennt, dann wird das Perl-Skript auf einer Kiste ohne Perl nicht laufen können und das Bash-Skript wird auf einer Kiste ohne Bash nicht laufen.
Das ist auch sinnvoll um beispielsweise nur Shell-Skripte schnell und einfach zu Durchsuchen.
Wenn man ein Shell-Skript foo nennt und ein Perl-Skript bar nennt, dann wird das Perl-Skript auf einer Kiste ohne Perl nicht laufen können und das Bash-Skript wird auf einer Kiste ohne Bash nicht laufen.
Das ist auch sinnvoll um beispielsweise nur Shell-Skripte schnell und einfach zu Durchsuchen.
Öhm, wo ist das Problem sich umzugewöhnen? Bei Unix macht eine Endung .exe keinen wirklichen Sinn. Zum einen ist bei Unix alles, was das x-Bit gesetzt hat, eXecutable. Ob das nun eine ELF-Binärdatei ist oder ein simples Bash-Shellscript, ist egal, alles zählt als Executable, wenn es ausführbar ist. Bei Windows ist das dagegen ein bisschen inkonsistent, da auch noch andere Sachen außer .exe ausführbar sein können.Original erstellt von Feierabend
Vielen Dank, werds nacher gleich mal ausprobieren.
Ich hab gern übersicht. Ich kanns nicht leiden, wenn ich in tausend Ordnern tausend Dateien hab, die nach einem x-beliebigen Muster benannt sind und die mir dann in 2 Wochen nicht mehr sagen, worums eigentlich geht.
Und .exe, weil ich das a) von Windows noch gewohnt bin und b) weil executable mir durchaus einleuchtet als "ausführbahres Programm". binary ist imo viel schwammiger, weil bei einem Computer bekanntlich alles binär ist. Ich könnte jede Datei als binary bezeichnen...
Die ausführbaren Dateien sind außerdem alle in den bin-Verzeichnissen (/bin, /usr/bin, /usr/local/bin, ...). Sorg' einfach für Ordnung im Dateisystem (ist per Default ja so), dann hast du auch keine Probleme damit.
Was Sinn macht, ist, Scripts mit der jeweils üblichen Endung zu versehen. Shell -> .sh, Perl -> .pl, Ruby -> .rb usw., damit man sie schnell unterscheiden kann, aber Binaries bekommen keine.
-
- Major
- Beiträge: 4107
- Registriert: Jul 2002
- Wohnort: #konsolen @ QuakeNet
OT: Der deutschen Sprache ist ein "macht Sinn" fremd. Eine Sache ist eben sinnvoll bzw. hat Sinn oder nicht. Sinn machen kann man nicht, höchstens geben.
Vielen Dank für die Aufmerksamkeit.
Vielen Dank für die Aufmerksamkeit.
Original geschrieben von Oldfag
solange x nicht gefixt wird, ist linux keine ernsthafe konkurrenz zu ms/apple in sachen desktop.
Original geschrieben von badct|iceman
zusätzlich kann das macbook dank dem 64bit system die stärken des dualcore cpus komplett ausnutzen und die last besser verteilen.
Ja, da muss man es auch nicht wirklich wissen, allerdings finde ich es bei eigenen Scripts sehr praktisch, und daher auch sinnvoll.Original erstellt von edgewalker
Nein, das macht keinen Sinn. Es ist auch fast nie so. Die Hälfte der Sachen in den verschiedenen bin-Verzeichnissen sind Shellskripte, die alle zu Recht keine Extension tragen.
Hat geklappt. Aber irgendwie sieht das komisch aus.
Werde mir also ein Skript mit dem schmucken Namen run schreiben, dass als Übergabeparameter eine binary bekommt, dann werd ich wohl zufriedener sein.
Und in wie weit es wirklich sinnvoll ist mit den Dateiextensions kann ich jetzt wohl noch nicht richtig beurteilen, dafür benützt ich Linux einfach noch nicht lang genug. Darüber streite ich dann mal in einem Jahr oder so wieder
Werde mir also ein Skript mit dem schmucken Namen run schreiben, dass als Übergabeparameter eine binary bekommt, dann werd ich wohl zufriedener sein.
Und in wie weit es wirklich sinnvoll ist mit den Dateiextensions kann ich jetzt wohl noch nicht richtig beurteilen, dafür benützt ich Linux einfach noch nicht lang genug. Darüber streite ich dann mal in einem Jahr oder so wieder
Ja ja. Ich hab es zunächst auch korrigiert, und auch noch drei Absätze Erläuterung dazugeschrieben. Dann habe ich statt "Submit" auf "Clear fields" geklickt. F*&S(*@H($$! Und dann "scheiss drauf" gedacht und es dabei belassen, wobei ich vergessen habe, wenigstens den einen Fehler wieder zu beheben.Original erstellt von Heißgetränk mit Zitrone
OT: Der deutschen Sprache ist ein "macht Sinn" fremd. Eine Sache ist eben sinnvoll bzw. hat Sinn oder nicht.
-
- Razor
- Beiträge: 1962
- Registriert: Aug 2000
- Wohnort: Aachen
Das ist auch kein gültiges Wort der deutschen SpracheOriginal erstellt von edgewalker
F*&S(*@H($$!
Schlimm ne? Heute hacken sie alle auf dir rum...
[small]Viele Namen habe ich in vielen Ländern. Mithrandir heiße ich bei den Elben, Tharkûn bei den Zwergen;
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.
J.R.R. Tolkien - The Lord Of The Rings[/small]
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.
J.R.R. Tolkien - The Lord Of The Rings[/small]
-
- Wrack
- Beiträge: 459
- Registriert: Jul 2001
Alles die Schuld vom bösen Maus-Klick-Interface! Mit nem CLI wär das nicht passiert... (Die hätten von Anfang an auch Webbrowser nur mit Tastaturbedienung ausstatten sollen *g*)Original erstellt von edgewalker
Ja ja. Ich hab es zunächst auch korrigiert, und auch noch drei Absätze Erläuterung dazugeschrieben. Dann habe ich statt "Submit" auf "Clear fields" geklickt. F*&S(*@H($$! Und dann "scheiss drauf" gedacht und es dabei belassen, wobei ich vergessen habe, wenigstens den einen Fehler wieder zu beheben.
[small]"Unterschreiben Sie einfach hier", sagte der Teufel, "und nennen Sie Ihren Wunsch."
Jonathan Palmer seufzte. "Ich wünsche mir ein Utopia", sagte er. "Eine makellose
Welt ohne Unrecht und Böses."
"Aber...", sagte der Teufel und sah überrascht drein, während er für immer verschwand.
"Scheint alles schon viel besser zu sein", sagte Jonathan Palmer, während er für immer
verschwand. "Viel, viel besser", sagte seine Frau und wandte sich vom Schlüsselloch
ab, um ihren Geliebten, Raoul, zu umarmen. Während sie für immer verschwand,
erinnerte sich Raoul daran, daß er der einzige Begünstigte ihrer immensen Lebens-
versicherung war. Er verschwand auf der Stelle, gefolgt von dem verschlagenen
Versicherungsangestellten, dem profitgierigen Versicherungsboß und dem ganzen Rest
der unperfekten Menschheit. Ich allein bin übrig. Ha ha ...
[/small]
Jonathan Palmer seufzte. "Ich wünsche mir ein Utopia", sagte er. "Eine makellose
Welt ohne Unrecht und Böses."
"Aber...", sagte der Teufel und sah überrascht drein, während er für immer verschwand.
"Scheint alles schon viel besser zu sein", sagte Jonathan Palmer, während er für immer
verschwand. "Viel, viel besser", sagte seine Frau und wandte sich vom Schlüsselloch
ab, um ihren Geliebten, Raoul, zu umarmen. Während sie für immer verschwand,
erinnerte sich Raoul daran, daß er der einzige Begünstigte ihrer immensen Lebens-
versicherung war. Er verschwand auf der Stelle, gefolgt von dem verschlagenen
Versicherungsangestellten, dem profitgierigen Versicherungsboß und dem ganzen Rest
der unperfekten Menschheit. Ich allein bin übrig. Ha ha ...
[/small]
-
- Major
- Beiträge: 4107
- Registriert: Jul 2002
- Wohnort: #konsolen @ QuakeNet
opera lässt sich komplett mit tastatur bedienen.Original erstellt von texray
Alles die Schuld vom bösen Maus-Klick-Interface! Mit nem CLI wär das nicht passiert... (Die hätten von Anfang an auch Webbrowser nur mit Tastaturbedienung ausstatten sollen *g*)
Original geschrieben von Oldfag
solange x nicht gefixt wird, ist linux keine ernsthafe konkurrenz zu ms/apple in sachen desktop.
Original geschrieben von badct|iceman
zusätzlich kann das macbook dank dem 64bit system die stärken des dualcore cpus komplett ausnutzen und die last besser verteilen.
-
- Bitterman
- Beiträge: 160
- Registriert: Okt 2001
Dann müsste man die Executables auch *.a.out, *.elf oder *.misc nennen, je nach format. Weil die laufen auch nur auf Systemen, wo der Kernel die entsprechenden Formate unterstütztOriginal erstellt von nobody0
Extension ist sinnvoll, damit man weiß was man dafür braucht.
Wenn man ein Shell-Skript foo nennt und ein Perl-Skript bar nennt, dann wird das Perl-Skript auf einer Kiste ohne Perl nicht laufen können und das Bash-Skript wird auf einer Kiste ohne Bash nicht laufen.
Das ist auch sinnvoll um beispielsweise nur Shell-Skripte schnell und einfach zu Durchsuchen.
Auf ein .pl für Perl-Skripte lass ich mich noch ein, aber alles andere ausführbare kriegt keine Erweiterung.
Oh ausser noch den Spiele-Installern, die oft *.run heissen, die lass ich auch so.
Am schlimmsten ist dieses gzip-Gerümpel, das möchte nämlich unbedingt eine Extension haben.
Ach ja, viel schöner finde ich es übrigens, sein "Hello World" test zu nennen und dann stundenlang nach dem Fehler zu suchen, warum er eigentlich nichts ausgibt.
PS: schlimmer als, nicht schlimmer wie
PPS: Kriegt man irgendwie dieses Rumgenerve von Firefox per GUI weg, daß ein Plugin nicht installiert sei (der öffnet ja dann so eine Leiste am oberen Bildschirmrand)?
Ach ja, viel schöner finde ich es übrigens, sein "Hello World" test zu nennen und dann stundenlang nach dem Fehler zu suchen, warum er eigentlich nichts ausgibt.
PS: schlimmer als, nicht schlimmer wie
PPS: Kriegt man irgendwie dieses Rumgenerve von Firefox per GUI weg, daß ein Plugin nicht installiert sei (der öffnet ja dann so eine Leiste am oberen Bildschirmrand)?
-
- Slash
- Beiträge: 678
- Registriert: Jan 2004
- Wohnort: Wörgl / Tirol / Austria
@firefox-problem:
Ich kanns dir jetzt leider nicht genau sagen, da ich gerade an einem Rechner mit IE ( ) sitze. Aber steht nichts in about:config in die Art?
@Topic && Extensions Diskussion:
Ich finde eine Endung nur dann sinnvoll, wenn sie mir die Suche / Bearbeitung / usw erleichtert. Sprich bei Sources. Bei kompilierten Programmen finde ich eine Endung sinnlos. Und bei Scripts ... Naja ... Die will ich auch ohne Endung, obwohl ich meine Scripts selber oft *.sh nenne ...
@ schlimmer als / wie:
In seinem Fall ist wie aber schon richtig... Oder?
Ich kanns dir jetzt leider nicht genau sagen, da ich gerade an einem Rechner mit IE ( ) sitze. Aber steht nichts in about:config in die Art?
@Topic && Extensions Diskussion:
Ich finde eine Endung nur dann sinnvoll, wenn sie mir die Suche / Bearbeitung / usw erleichtert. Sprich bei Sources. Bei kompilierten Programmen finde ich eine Endung sinnlos. Und bei Scripts ... Naja ... Die will ich auch ohne Endung, obwohl ich meine Scripts selber oft *.sh nenne ...
@ schlimmer als / wie:
In seinem Fall ist wie aber schon richtig... Oder?
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
.sh/.pl/etc nenne ich meine Skripte nur, wenn ich ihnen kein +x verpasssen will. In ~/bin zB hat nichts eine Endung. Textdateien haben meist auch keine Endung sondern Namen in Grossbuchstaben -- à la README, INSTALL, AUTHORS etc. Ansonsten verwende ich aber sehr wohl Endungen.
Die Ausführbarkeit einer Datei an ihrer Endung festzumachen wie bei Windows ist auch schwachsinnig -- gerade unter Unix, wo es den #!-Mechanismus gibt. Jede Art von Datei kann im Grunde ausführbar sein, die Ausführbarkeit hängt also nicht mit dem Dateitypen zusammen und sollte daher auch nicht an der Endung entschieden werden. Viel sinniger als eine Aufstellung, welche Endungen Ausführbarkeit signalisieren (wie es Windows in der Registry macht) ist es also, einfach ein Attribut an der Datei zu setzen.
Die Ausführbarkeit einer Datei an ihrer Endung festzumachen wie bei Windows ist auch schwachsinnig -- gerade unter Unix, wo es den #!-Mechanismus gibt. Jede Art von Datei kann im Grunde ausführbar sein, die Ausführbarkeit hängt also nicht mit dem Dateitypen zusammen und sollte daher auch nicht an der Endung entschieden werden. Viel sinniger als eine Aufstellung, welche Endungen Ausführbarkeit signalisieren (wie es Windows in der Registry macht) ist es also, einfach ein Attribut an der Datei zu setzen.
-
- Slash
- Beiträge: 678
- Registriert: Jan 2004
- Wohnort: Wörgl / Tirol / Austria
ist so schlimm wie vim vs. emacs ...Original erstellt von cirad
Nein, ist es unter Garantie nicht.
ist so schlimm als vim vs. emacs ...
Tut mir leid ... das zweite klingt für mich schräg. Bist du dir sicher?
Vielleicht liegt es aber einfach daran, dass ich als Tiroler kein anständiges Deutsch kann
To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.