Archiv verlassen und diese Seite im Standarddesign anzeigen : Programmieren unter Linux die X'te
chaostrupp
21-08-2006, 16:02
Hi,
ich versuch seit einiger Zeit unter Linux zu programmieren. Es gelingt mir zwar Programme zu schreiben, doch ich sage weiterhin versucht da es einfach nicht optimal ist wie ich es zur Zeit läuft.
Ich hoffe mir können einige erfahrene Linux-Programmierer weiter helfen:
Anforderungen die ich an das Programm stelle (vielleicht ist das schon zuviel):
- binär (da es verkauft werden soll)
- lauffähig auf allen aktuellen distris + alle windows nt versionen
- einfach zu installieren
Wie es zur Zeit aussieht und wo die Probleme sind:
- Mit Hilfe von QT hab ich das portabel zwischen windows und linux bekommen.
- Bei Windows compiliert, läuft auf allen Windowsrechnern
- Bei Linux compliert, läuft nur auf der Distri und auch nur auf der Version! Nun hab ich ein wenig rumgesucht und versucht mit statischem und dynamischen Linken das Problem in griff zu bekommen. Aber Fehlanzeige entweder meckert er schon beim Erstellen rum oder das Programm startet erst gar nicht, libraries würden fehlen. Wenn ich aber alles static mache wieso braucht der noch libraries?
- Windows installieren: dafür gibt es jedemenge Installer Programme 5 min fertig. Wie geht das bei Linux? Ich mein jetzt nicht 30 Packete erstellen für jede Distri eine, sondern halt möglichst rentabel und einfach!
Würd mich freuen wenn mich einer helfen könnte.
gruß Chaostrupp
Romanday
21-08-2006, 19:03
Glaube das ist die falsche Forum Kat.
Besser:
Umgebungen, Entwicklungstools, Frameworks, IDEs
schreib dem Mod, doch 1x eine PM, damit er dein Posting
verschiebt.
anda_skoa
21-08-2006, 19:14
Das passt hier schon
Ciao,
_
anda_skoa
21-08-2006, 20:15
Die LSB hat glaub ich ein SDK für Hersteller von Linux Software, mit denen LSB kompatible Builds und Pakete gemacht werden können.
Nachdem LSB 3.1 jetzt auch "Desktop" Sachen umfasst, unter anderem Qt3 und GTK2, sollte es abgesehen von eventuellen Drittbibliotheken schon möglich sein, ein Paket für alle LSB kompatiblen Distributionen zu erstellen.
Vor ein paar Tagen haben ja RealNetworks und MySQL angekündigt, beim nächsten Release LSB 3.1 kompatibel zu sein.
Ciao,
_
chaostrupp
23-08-2006, 11:03
Big thx, genau so was hab gesucht!
Werde mal schauen, ob ich es damit hinbekomme.
gruß Chaostrupp
chaostrupp
23-08-2006, 15:23
Hm sehr weit komm ich nicht gerade. Hab mir mal die Dokumentation durchgelesen, klang auch alles sehr logisch, aber dann wollt ich das erste Beispiel nachmachen mit Helloworld und bekomm bei dem Befehl "lsbappchk hello" die Ausgabe:
Cheching binary hello
Section .note.SuSE: Not recognized by name. Checking as type SHT_NOTE
Nun hat ich Google mal um Rat gefragt, aber dem scheint selbst der Fehler unbekannt zu sein.
Jemand eine Idee woran es liegen könnte?
Ich benutz Suse 10 und LSB 3.1.1-1
gruß Chaostrupp
anda_skoa
23-08-2006, 15:37
Ist das ein Error oder vielleicht nur ein Warning.
Im zweiten Falle könne eventuell das Checktool noch nicht ganz uptodate sein, oder ähnliches.
Hab leider bisher noch keine Zeit gehabt, mit das LSB SDK anzusehen, wußte lediglich, das es eines gibt
Ciao,
_
chaostrupp
24-08-2006, 10:39
Hi,
also ich hab jetzt mal 3.0 installiert was angeblich mit Suse 10 funktionieren soll aber Fehlanzeigen. Selber Fehler.
Jetzt hab ich zu guterletzt noch mal 2.1 installiert und da bekomm ich wenigstens die Fehlermeldung: "section .note.Suse is not in the LSB"
Stellt sich mir nun die Frage wieso wird .note.Suse ausgegeben und nicht Suse.10? Und wieso sagt er bei Version 3.0 denn selben Fehler an obwohl er es doch eigentlich unterstützen müsste?
Gib es hier vielleicht jemanden der mit LSB Erfahrung hat?
gruß Chaostrupp
anda_skoa
24-08-2006, 15:59
Vielleicht ist das ein SUSE Problem.
Hast du ein anderes System auf dem du testen könntest?
Ciao,
_
Christoph
24-08-2006, 16:43
- Bei Linux compliert, läuft nur auf der Distri und auch nur auf der Version! Nun hab ich ein wenig rumgesucht und versucht mit statischem und dynamischen Linken das Problem in griff zu bekommen.
Eigentlich geht das wegen der Libc Inkompatibilitäten nur durch statisches Linken. Das hat zwei Nachteile: 1) einige LGPL-Hardliner meinen das wäre für closed source Programme unter Linux verboten. 2) Seit Debian Sarge geht das unter Debian nicht mehr (vielleciht klappts aber noch unter SuSE).
Eine andere Lösung wäre, eine möglichst alte Distribution zu verwenden (mindestens 5 Jahre alt), in der Hoffnung, dass deren Libc-Version wenigstens auf neueren Distributionen mit dabei ist.
- Windows installieren: dafür gibt es jedemenge Installer Programme 5 min fertig. Wie geht das bei Linux? Ich mein jetzt nicht 30 Packete erstellen für jede Distri eine, sondern halt möglichst rentabel und einfach!
Ich verwende dafür EPM (ist freie Software).
http://www.easysw.com/epm/
anda_skoa
24-08-2006, 17:15
Eigentlich geht das wegen der Libc Inkompatibilitäten nur durch statisches Linken
Im Grunden gibt es genau deswegen die LSB, damit für die häufigsten Bibliotheken Version und ABI festgelegt sind.
1) einige LGPL-Hardliner meinen das wäre für closed source Programme unter Linux verboten.
Soweit ich weiß muß der Empfänger in diesem Fall lediglich die Möglichkeit haben, die Applikation neu zu erstellen, d.h. vom Rest der Applikation muß ein linkfähiges Objectfile bzw -files verfügbar sein.
Ist natürlich bei inlines und im Header definierten Konstanten/Macros ein Grenzfall
Ciao,
_
chaostrupp
24-08-2006, 19:03
Also ich hab das jetzt auf einer 64Bit Version noch mal getestet, da bekomm ich es aber nichteinmal fehlerfrei compiliert mit lsbcc. Werde das jetzt aber nochmal mit einem anderen System probieren der ist der Liste von LSB steht, wenn das auch nicht klappen sollte läuft es halt nur auf einem bestimmten System.
Die Idee mit LSB klingt super, aber leider ist es noch nicht so richtig durchgesetzt. Naja erst mal schauen ob es auf dem anderen System läuft.
gruß Chaostrupp
anda_skoa
24-08-2006, 22:55
Vermutlich bekommen die Entwickler hinter LSB auch wenig Feedback von Softwareherstellern.
Nachdem außerdem jeder Distributor die Umsetzen bischen anders machen darf, solange die Vorraussetzungen ansich erfüllt sind, kann es sein, daß das Testtool vielleicht nicht alle Varianten abdeckt, die Applikation aber korrekt läuft.
Ich sehen schon ich sollte mir das mal genauer ansehen :)
Würde mich freuen, wenn du uns bezüglich deiner Fortschritte am Laufenden hältst.
Ciao,
_
chaostrupp
25-08-2006, 09:18
Vermutlich bekommen die Entwickler hinter LSB auch wenig Feedback von Softwareherstellern.
Jo kann gut sein, dass das mit ein Grund ist. Na mal schauen, vielleicht schreib ich denen ja ein kurzen Bericht, wenn ich Zeit hab.
Würde mich freuen, wenn du uns bezüglich deiner Fortschritte am Laufenden hältst.
Werd ich machen! Es ist bei mir aber nur ein Nebenprojekt, kann also unter Umständen etwas dauern. :rolleyes:
gruß Chaostrupp
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.