Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 28.06.2009, 11:40 Titel: Startprobleme unter linux |
|
|
Hallo,
ich hab jetzt seit 3 Tagen Ubuntu installiert, (bin also absoluter Anfänger)
hab nach qbasic-Alternativen gesucht und bin bei euch gelandet.
also gleich den Compiler installiert (denk ich zumindest)
das sagt das Terminal:
Code: | dominik@dominik-desktop:~/Desktop/fb$ fbc -version
FreeBASIC Compiler - Version 0.20.0 (08-10-2008) for linux (target:linux)
Copyright (C) 2004-2008 The FreeBASIC development team.
Configured as standalone
|
das stimmt doch so weit oder?
jetzt zu meinem Problem:
Code: | dominik@dominik-desktop:~/Desktop/fb$ fbc test.bas
/usr/share/freebasic/bin/linux/ld: cannot find -lncurses
|
in test.bas steht:
Was mach ich den falsch? |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 28.06.2009, 12:24 Titel: |
|
|
bash-script für die installation aller benötigter pakete unter Ubuntu / Debian:
Code: | #!/bin/bash
#freebasic
sudo aptitude install binutils linux-libc-dev libncurses5-dev libstdc++6-4.1-dev build-essential
sudo aptitude install libX11-dev libXext-dev libXpm-dev libXrender-dev libXrandr-dev
sudo aptitude install libstdc++6-dev
#opengl
#sudo aptitude install libgl-dev libglu-dev
#zlib (for compiling libfbpng)
#sudo aptitude install zlib1g-dev
|
die letzten beiden blöcke bei bedarf auskommentieren. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 28.06.2009, 17:22 Titel: |
|
|
Danke! jetzt gehts!
jetzt hab ich nur ein neues Problem:
Die erzeugte Datei test. es passiert nichts beim Ausführen. Ich habs mit draufklicken und mit Aufrufen aus dem Terminal probiert.
edit: ich sehe gerade das bei Linksklick => Eigenschaften => öffnen mit nichts eingetragen ist. Kann das der Fehler sein? |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 28.06.2009, 17:47 Titel: |
|
|
im terminal:
(wenn du im selben ordner bist wie die binary)
wenn das nichts hilft, chmod +x test
wenns danach nich geht, wieder hier melden. _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 29.06.2009, 14:30 Titel: |
|
|
Ja.. Linux ist in allem etwas anders als Windows.
Wenn du einen Doppelklick auf eines deiner Programme machst, wird es wahrscheinlich ausgeführt. Aber dessen "Ausgabe" erscheint nicht für den Anwender sichtbar sondern auf seine Standard-Ausgabe, von wo aus der X-Server gestartet wurde.
Das kann man meistens einsehen wenn man mit ALT-F1 bis ALT-F12 alle Terminals durchgeht und man auf die Standard-Ausgabe vom X-Server landet. Dann sieht man neben den Meldungen vom X-Server auch die Text-Ausgabe des eigenen Programms.
Bei vielen Dateimanangern kann man irgendwo sagen "Im Terminal ausführen"... Meistens im Kontext wenn du mit rechtsklick auf dein Programm klickst.
-> Das sollte für deine Zwecke ideal sein! .. Musst nur drauf achten, dass dein Programm mit irgendwas wie Sleep oder Do: loop until inkey <> "" vorm Beenden aufgehalten wird. Sonst schließt sich das Fenster wieder bevor man es sieht. (das Problem hat man aber auch unter windows) |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4604 Wohnort: ~/
|
Verfasst am: 29.06.2009, 15:49 Titel: |
|
|
Zitat: | loop until inkey <> "" |
do : sleep 1 : loop until inkey <> "" bitteschön.
Ich habe mir tatsächlich angewöhnt, alle Programmen, bei denen ich mir nicht sicher bin, ob sie "richtig" ausgeführt werden, über Konsole zu starten (z. B. läuft bei mir wine grundsätzlich über Konsole; im Zweifelsfall kann ich dann ein sich aufhängendes Programm auch einfacher abschießen). Zum Compilieren wird man ja vermutlich sowieso in irgendeiner Form auf die Konsolenausgabe zurückgreifen, und dann kann man darüber auch gleich das Programm laufen lassen.
Ein schicker Editor nimmt einem da natürlich einiges ab. Darf ich fragen, ob du da schon was spezielles verwendest? _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
St_W
Anmeldungsdatum: 22.07.2007 Beiträge: 949 Wohnort: Austria
|
Verfasst am: 29.06.2009, 15:55 Titel: |
|
|
Falls du eine schlanke IDE suchst, kann ich dir "Geany" empfehlen ( http://www.geany.org/ ). Damit muss man nur eine Quellcodedatei erstellen / öffnen, FreeBasic als Dateiformat einstellen, coden und dann auf compilieren / ausführen klicken. Dabei öffnet sich automatisch auch ein Konsolenfenster, dass die Ausgaben des Programms auf die Konsole anzeigt. _________________ Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken) |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4604 Wohnort: ~/
|
Verfasst am: 29.06.2009, 15:59 Titel: |
|
|
(ist übrigens auch in den Ubuntu-Paketquellen, wenn auch naturgemäß nicht immer in der allerneusten Version) _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 29.06.2009, 17:00 Titel: |
|
|
Hab mit geany bisher keine schlechten erfahrungen gemacht... allerdings frag ich mich schon seit ner ganzen Weile, ob man nicht die compiler-flags irgentwo einstellen kann... (oder mit spezielle compiler-flags auf bestimmte tasten legen kann).
Im übrigen funktioniert das syntax-highlight von geany besser als das von FBide unter Windows. _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4604 Wohnort: ~/
|
Verfasst am: 29.06.2009, 17:46 Titel: |
|
|
Du kannst zumindest die Kompilier- und Ausführparameter festlegen; ich hatte z. B. zeitweise auf eine Taste "Kompilieren+Ausführen" gelegt.
Unter "Projekteigenschaften" kannst du außerdem den Ausführen-Befehl projektintern belegen. Ist zwar nur eine einzige mögliche (Zusatz-)Einstellung, aber immerhin. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 30.06.2009, 21:10 Titel: |
|
|
also IDE-technisch hab ich bis jetzt nichts wobei ich das Großschreiben der Befehle bei richtiger Eingabe bei QBASIC richtig gut finde . Ich habe mal probiert geany zu installieren, aber kam aber nur ne Fehlermeldung. (glaub des hat was mit dem der fehlenden Library zu tun) und so wichtig ist mir persönlich des jetzt ach nicht.
Ich hab jetzt ein neues Problem:
Das anpassen meiner QBASIC-Programme an Linux:
Die Dateinamen hab ich jetzt schon angepasst.
Jedoch bei der parallelen Schnittstelle hab ich so meine Probleme:
Am den 8 Datenleitungen sind jeweils eine Treiberstufe und ein Relais.
wenn ich also binär 0000 0001 bzw dezimal 1 an die Schaltung sende zieht Relais 1 an
unter QBASIC ging das so:
unter FreeBASIC geht das laut der Referenz und bei mir nicht.
Die anderen Befehle beziehen sich ja immer auf den Standartdrucker und man kann keine Adresse angeben (wo finde ich die eigentlich bei den alten PC sah man die ja immer im BIOS). Ich hab da etwas herumprobiert bin aber zu keinem Ergebnis gekommen. Die parallelen Schnittstelle kann Linux meiner Meinung nach ansteuern.
@OneCypher: Das ist ja mal geil!! Bei Windows hatte ich immer das Problem das bei 4 gestarteten QBASIC-Programmen, die eigentlich im Hintergrund laufen sollten, der Platz auf der Task-Leiste knapp wurde. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 30.06.2009, 23:13 Titel: |
|
|
Zitat: |
also IDE-technisch hab ich bis jetzt nichts wobei ich das Großschreiben der Befehle bei richtiger Eingabe bei QBASIC richtig gut finde |
das ist doch total unleserlich (vor allem bei langen befehlen) -> farbliches highlighting ist viel toller! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 01.07.2009, 22:18 Titel: |
|
|
Zitat: |
das ist doch total unleserlich (vor allem bei langen befehlen) -> farbliches highlighting ist viel toller! Zunge rausstrecken |
so viel Erfahrung mit langen Befehlen hab ich ja noch nicht wenn es so weit ist werde ich auf geany zurückgreifen.
zu meinem Parallelportproblem habe ich wahrscheinlich die Lösung gefunden: unter /dev/parport0 kann man die Schnittstelle ansteuern. Nur kann ich die Datei nicht öffnen,
wenn ich im Dateimanager die Datei öffnen will habe ich keine Rechte dazu.
also gegoogelt und das gefunden:
Zitat: | Daten auf die parallele Schnittstelle schreiben kannst du einfach von der Kommandozeile aus, indem du die Ausgabe eines Programms dorthin umleitest, z.B.
Code: | cat roboterprogramm.txt >/dev/parport0 |
|
(http://forum.ubuntuusers.de/topic/programmers-notepad-fuer-linux-gesucht/)
nur geht das bei mir nicht, auch nicht mit sudo.
An sich finde ich ja den Gedanken das in eine Datei zu schreiben viel logischer und einfacher als bei Windows. Wenn ich nur die Rechte dazu hätte. |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4604 Wohnort: ~/
|
Verfasst am: 01.07.2009, 23:14 Titel: |
|
|
Du müsstest als sudo mal schauen, welche Rechte du für diese Datei hast. Auch wenn du Superuser bist, heißt das noch nicht, dass du auch Schreibrechte auf die Datei hast; aber du kannst die Rechte deiner eigenen Dateien ändern, dir also selbst das Schreibrecht geben. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 02.07.2009, 19:28 Titel: |
|
|
ich komme einfach nicht weiter
was ich bis jetzt probiert habe:
Code: | root@dominik-desktop:~# cd dev
bash: cd: dev: No such file or directory
root@dominik-desktop:~# cd /dev
root@dominik-desktop:/dev# chmod a+rwx parport0
root@dominik-desktop:/dev# chmod a+rwx parport0 -c
root@dominik-desktop:/dev# ls -l /dev/parport0
crwxrwxrwx 1 root lp 99, 0 2009-07-02 16:26 /dev/parport0
root@dominik-desktop:/dev# chown dominik: /dev/parport0
root@dominik-desktop:/dev# exit
exit
dominik@dominik-desktop:~$ echo 0 > /dev/parport0
bash: echo: write error: Invalid argument
dominik@dominik-desktop:~$ echo 1 > dev/parport0
bash: dev/parport0: No such file or directory
dominik@dominik-desktop:~$ cd /dev
dominik@dominik-desktop:/dev$ echo 1 > ./parport0
bash: echo: write error: Invalid argument
dominik@dominik-desktop:/dev$ /dev/parport0-x
bash: /dev/parport0-x: No such file or directory
dominik@dominik-desktop:/dev$ /dev/parport0
bash: /dev/parport0: Permission denied
dominik@dominik-desktop:/dev$ cd
dominik@dominik-desktop:~$ cat test.txt >/dev/parport0
cat: Schreibfehler: Invalid argument
dominik@dominik-desktop:~$ cat help
cat: help: No such file or directory
dominik@dominik-desktop:~$ cat -help
cat: invalid option -- 'h'
„cat --help“ gibt weitere Informationen.
dominik@dominik-desktop:~$ sudo -s
[sudo] password for dominik:
root@dominik-desktop:~# cd /dev
root@dominik-desktop:/dev# cat parport0
cat: parport0: Invalid argument
root@dominik-desktop:/dev# exit
exit
dominik@dominik-desktop:~$ cat -h
cat: invalid option -- 'h'
„cat --help“ gibt weitere Informationen.
dominik@dominik-desktop:~$
dominik@dominik-desktop:~$ cat --help
Aufruf: cat [OPTION] [DATEI]...
DATEI(en) oder Standardeingabe auf Standardausgabe verketten.
-A, --show-all äquivalent zu -vET
-b, --number-nonblank nichtleere Ausgabezeilen nummerieren
-e äquivalent zu -vE
-E, --show-ends $ am Ende jeder Zeile ausgeben
-n, --number alle Ausgabezeilen nummerieren
-s, --squeeze-blank aufeinander folgende Leerzeilen unterdrücken
-t äquivalent zu -vT
-T, --show-tabs Tabulator‐Zeichen als ^I ausgeben
-u (wird ignoriert)
-v, --show-nonprinting ^‐ und M‐Notation benutzen, außer für LFD und Tab.
--help diese Hilfe anzeigen und beenden
--version Versionsinformation anzeigen und beenden
Ohne DATEI oder wenn DATEI „-“ ist, Standardeingabe lesen.
Beispiele:
cat f - g gibt den Inhalt von »f«, danach die Standardeingabe, dann den Inhalt von »g«.
cat kopiert die Standardeingabe auf die Standardausgabe.
Melden Sie Übersetzungsfehler an <translation-team-de@lists.sourceforge.net>,
Programmfehler dagegen (auf Englisch, mit LC_ALL=C) an <bug-coreutils@gnu.org>.
dominik@dominik-desktop:~$
|
|
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4604 Wohnort: ~/
|
Verfasst am: 02.07.2009, 20:30 Titel: |
|
|
Bei mir existiert (standardmäßig) gar keine Datei /dev/parport0, deswegen kann ich das nicht ganz nachstellen. Mit einer selbst angelegten Datei (ob sie nun parport0 heißt oder anders) funktionieren deine Versuche ganz gut. Allerdings habe ich nicht ganz deine Original-Benutzerrechte hergestellt.
Woraus ich nicht ganz schlau werde ist
Zitat: | root@dominik-desktop:/dev# ls -l /dev/parport0
crwxrwxrwx 1 root lp 99, 0 2009-07-02 16:26 /dev/parport0 |
Kann mir jemand sagen, was dieses c bedeutet? _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
d-ominik
Anmeldungsdatum: 27.06.2009 Beiträge: 9
|
Verfasst am: 02.07.2009, 21:39 Titel: |
|
|
könnte das eventuell copy bedeuten? Kopieren kann ich die Datei jedenfalls nicht.
ich hab mir da eine andere Möglichkeit überlegt: einfach dem Computer vorgaukeln die Relaiskarte währe ein Drucker der nur den ASCII-Code beherrscht. dann könnte ich zwar nur 7 Datenleitungen ansteuern aber damit könnte ich gut leben. Wenn ich irgendwann mehr Ausgänge brauch häng ich einfach zwei 74138er an die Datenleitungen. |
|
Nach oben |
|
|
|