Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
qbay
Anmeldungsdatum: 08.06.2008 Beiträge: 84
|
Verfasst am: 11.02.2009, 22:08 Titel: Grundfragen zum Programmieren |
|
|
Hallo
Ich habe dieses Thema hier hereingestellt weil ich nich glaube das es irgentwo anders hineinpasst.
Also ich habe eine Grundfragen:
Wenn der Compiler einer Sprache , sagen wir mal FREEBASIC ,
ein Programm compiliert ist es dann auch auf einem Computer
ausführbar der nicht den FREEBASIC Compiler besitzt?
Auch wenn die Frage blöd klingt bitte ich euch doch trotzdem sie zu beantworten. Irgentwann muss muss ich das ja erfahren.
Gruss |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 11.02.2009, 22:11 Titel: |
|
|
Klar, FreeBASIC braucht keine Runtimelibraries oder so...sollte also immer gehen. |
|
Nach oben |
|
 |
The_Muh aka Mark Aroni

Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 11.02.2009, 23:08 Titel: |
|
|
Man braucht nur zusatzabhängigkeiten, bspw. wenn man GTK(+) nutzt, oder FMOD, BASS, Allegro oder sonstewas. Aber standard-FreeBASIC ist auf jedem Computer lauffähig (ausnahme: MAC OS, soweit ich weiß gibts dafür noch keinen compiler). _________________ // nicht mehr aktiv // |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 12.02.2009, 13:30 Titel: |
|
|
Du hast zuersteinmal nur deinen Quellcode. Wenn du den dann durch den FB-Compiler schiebst, erhältst du hinten raus eine ausführbare Datei. Das, was FB-Programme von Haus aus schon brauchen, befindet sich dann teilweise - zusammen mit deinem eigentlichen Programm - in der ausführbaren Datei. Das, was sonst noch so gebraucht wird, ist i.d.R. bereits auf jedem Computer mit dem gleichen Betriebssystem (Windows, Linux) installiert.
Aufpassen musst du nur, wenn du zusätzliche Bibliotheken verwendest. Also Sammlungen von Funktionen, die dir FB so von sich aus nicht bietet. Meist musst du dort dann z.B. eine DLL mitgeben. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 13.02.2009, 01:27 Titel: |
|
|
Ergänzung zu Maos Beitrag.
Es kann zu Problemen bei der Abwärtskompatibilität kommen:
Was auf einem 686(oder besser) unter Vista als EXE kompiliert wurde muss nicht auf einem 486 unter Win98SE funktionieren. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 13.02.2009, 11:22 Titel: |
|
|
volta hat Folgendes geschrieben: |
Was auf einem 686(oder besser) unter Vista als EXE kompiliert wurde muss nicht auf einem 486 unter Win98SE funktionieren. |
Normalerweise aber schon, solange nur die normale WinAPI oder die normale Console oder der DOS-Compiler verwendet wird.
Andererseits kann es passieren, daß die alten DOS-Commands oder ein DOS-Programm auf Vista nicht funktionieren (die DOS-Emulation von XP und Vista wurden geändert, da gibt es Kompatibilitätsprobleme) _________________ Und die Grundgebihr is aa scho drin- DOS is jo nett. |
|
Nach oben |
|
 |
qbay
Anmeldungsdatum: 08.06.2008 Beiträge: 84
|
Verfasst am: 13.02.2009, 15:48 Titel: |
|
|
ok vielen dank
also ich verstehe es jetzt
auch das mit den zusätzlichen Sprachen
freu
alles klar dan bis zum nächsten mal |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 13.02.2009, 17:37 Titel: |
|
|
Elektronix hat Folgendes geschrieben: | Normalerweise aber schon, solange nur die normale WinAPI oder die normale Console oder der DOS-Compiler verwendet wird. |
Definiere "normal". Die WinAPI ändert sich ständig und es kommen neue Funktionen hinzu. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 13.02.2009, 17:58 Titel: |
|
|
Ein i686er kennt Befehle bei denen ein i386er nur mit Exceptions um sich wirft  |
|
Nach oben |
|
 |
qbay
Anmeldungsdatum: 08.06.2008 Beiträge: 84
|
Verfasst am: 07.04.2009, 19:33 Titel: |
|
|
hey ich bins wieder
also ich hab ne neue frage
meine letzte frage liegt schon etwas zurück und es ging ja um compiler
meine neue frage ist warum funktioniert C/C++ auf den meisten Systemen und FreeBasic nicht so sehr
Wo ist eigentlich dieser grosse Unterschied weshalb die meisten eher C/C++ benutzen als FreeBasic??
ruhig ausführlich^^
gruss bis bald  |
|
Nach oben |
|
 |
The_Muh aka Mark Aroni

Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 07.04.2009, 19:45 Titel: |
|
|
Der Grund dafür das der compiler nicht auf jedem System funktioniert ist, das für jedes OS (und unter umständen für jede Architektur) die Runtimelib umgeschrieben werden muss, da zum beispiel .exe (Windows-Binarys) anders aufgebaut sind als ELF (Linux-Binarys). Und da FreeBASIC noch recht Jung ist, werden bisher nur wenige Architekturen und Betriebsysteme unterstützt. Es ist einfach mehr aufwand erforderlich.
C(++) dagegen ist schon nen alter Hase unter den Programmiersprachen. Es existieren unzähliche Compiler für jede einzelne Architektur und jedes OS.
Das alter einer Programmiersprache bringt es auch mit sich das mehr Libs für ebendiese bereitgestellt sind, bzw schnittstellen für die Libs.
Das mehr Programmierer C(++) "sprechen" liegt also daran, das man mit C++ wesentlich mehr möglichkeiten hat und nartürlich weil C++ wesentlich bekannter ist als FreeBASIC.
Btw: ich muss mir manchmal immernoch anhören das ich VB programmiere, weil die leutchen alle analphabeten sind oder denken das ich nen tippfehler gemacht hab, wenn ich FB schreibe... _________________ // nicht mehr aktiv // |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 07.04.2009, 19:48 Titel: |
|
|
Normalerweise neue Frage neuer Thread.
FB funktioniert doch auch überall, also auf jedenfall auf den meisten PC-Systemen.
Der Grund, warum die meisten C-verwandte Sprachen verwenden, ist wohl, weil die länger existieren als FB. FB allgemein ist recht unbekann weil ja auch recht neu.
C wird BASIC-Dialekten vorgezogen, da die meisten Leute denken, dass BASIC Anfängerzeug ist, ohne richtige Funktionen und weil das schon lange so ist, ist die Community für C Sprachen viel größer, als die der BASIC-Sprachen. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 07.04.2009, 19:49 Titel: |
|
|
The_Muh hat Folgendes geschrieben: | das man mit C++ wesentlich mehr möglichkeiten hat |
Beispiel: C++ ist objektorientiert, während OO in FB bisher nur teilweise umgesetzt wurde.
The_Muh hat Folgendes geschrieben: | Btw: ich muss mir manchmal immernoch anhören das ich VB programmiere, weil die leutchen alle analphabeten sind oder denken das ich nen tippfehler gemacht hab, wenn ich FB schreibe... |
FisualBasic?  _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.04.2009, 19:54 Titel: |
|
|
Zitat: | FB funktioniert doch auch überall, also auf jedenfall auf den meisten PC-Systemen. |
Deine Welt besteht nur aus Personal Computern? Interessant. Ich hab gehört, es gäbe da noch sowas wie "Macs" und "Eingebettete Systeme", "Mirkocontroller" und lauter so sinnloser krams, der in MP3-Playern, Digitalkameras, Handys und sonstwo eingesetzt wird und haupstächlich mit Assembler oder C programmiert wird.
@Sebastian: Nein, natürlich heißt das "FissionsBasic"! Fission <-> Fusion! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 07.04.2009, 19:57 Titel: |
|
|
Ist mir schon bewusst, ich hab die Frage nur mehr so im PC Bereich verstanden, aber natürlich hast du Recht. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.04.2009, 20:08 Titel: |
|
|
Ja kennst du den Mirko nicht?! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
The_Muh aka Mark Aroni

Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 07.04.2009, 20:20 Titel: |
|
|
Jojo hat Folgendes geschrieben: | Zitat: | FB funktioniert doch auch überall, also auf jedenfall auf den meisten PC-Systemen. |
Deine Welt besteht nur aus Personal Computern? Interessant. Ich hab gehört, es gäbe da noch sowas wie "Macs" und "Eingebettete Systeme", "Mirkocontroller" und lauter so sinnloser krams, der in MP3-Playern, Digitalkameras, Handys und sonstwo eingesetzt wird und haupstächlich mit Assembler oder C programmiert wird.
@Sebastian: Nein, natürlich heißt das "FissionsBasic"! Fission <-> Fusion! |
/edit was fürn quark hab ich denn da vorher geschrieben?
Aber : Wer würde denn Freebasic auf Microcontrollern einsetzen? _________________ // nicht mehr aktiv // |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4704 Wohnort: ~/
|
Verfasst am: 07.04.2009, 20:31 Titel: |
|
|
Da frage ich mich doch, ob ich FB auch auf dem Auto meines Nachbarn zum laufen bringen könnte; das läuft nämlich (zu unserer aller Erstaunen) unter Windows Vista.  _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 07.04.2009, 21:08 Titel: |
|
|
Für FB gibts bisher ja auch nur eine Compiler-Entwicklung. C(++) ist aber mehr 'ne Sprachdefinition (also quasi ein Dokument, das die Programmiersprache in allen Einzelheiten nur beschreibt, aber noch keine konkrete Implementierung) als ein Compiler. Es gibt zig verschiedene Compiler, die C(++) in Maschinencode umsetzen können, aber nur einen einzigen für FB. Selbst für eine einzige Plattform gibt es bei C(++) noch eine vergleichsweise große Auswahl an Compilern. Das liegt zum einen daran, dass es für ebendiese Sprachen lohnenswert war, da sie einem z.T. große Freiheiten bieten. Es hindert dich bspw. niemand daran, einen eigenen FB-Compiler für ARM zu schreiben. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
|