Habt ihr mit Programme, die man selber kompilieren statt einfach installieren muss, auch keine gute Erfahrung gemacht?

4 Antworten

Es ist in der Linuxwelt ein gängiges Verfahren, Programme im Quellcode und mit einem Compilierungsskript bereitzustellen. Die für die Compilierung bereitgestellten Hilfsmittel können je nach Sprache unterschiedlich sein und sind nicht immer völlig unproblematisch zu verwenden.

Die Compilierung von C, C++ und Objective C gelingt mir auf Linuxrechnern meist problemlos. Das liegt auch daran, dass das benötigte Hilfsprogram make auf den meisten Linuxsystemen vorinstalliert ist. Wenn das zu compilierende Programm nicht irgendwelche sehr speziellen Programmbibliotheken erfordert, gelingt die Compilierung mit make oft auf Anhieb. Andernfalls müssen vorbereitend die erforderlichen Bibliotheken installiert werden.

Wenn an Stelle von make das Hilfsprogramm CMake verwendet wird, ist die Situation geringfügig anders: CMake muss auf vielen Systemen zunächst installiert werden. Unter Umständen müssen auch die Skriptdateien angepasst werden.

Das Compilieren mit selten verwendeten oder mit sehr neuen Hilfsprogrammen (z.B. Meson) kann problematischer sein; diese Hilfspogramme müssen meist zunächst installiert werden und ändern sich oft auch noch ziemlich häufig.

Die Compilierung von Java mit dem Hilfsprogramm ant funktioniert oft recht gut; die Compilierung sehr neuer Java-Programme mit einem alten SDK wird aber in der Regel fehlschlagen, weil Java gegenwärtig einen Modernisierungsprozess durchläuft, der gelegentlich Versionsprobleme verursacht.

Die Compilierung von C# mit dem Entwicklungssystem mono hat in der Vergangenheit immer wieder mal Probleme verursacht, die auf Änderungen in der Programmiersprache und ihren Bibliotheken zurückzuführen waren. Außerdem vernachlässigen die Entwickler von mono bekanntermaßen die Tests und die Qualitätssicherung.

Die Compilierung alter Ada-Programme mit einer neuen Version des GNAT Ada Compilers kann Fehlermeldungen verursachen, die bei den älteren Compilern nicht aufttraten; in dieser Situation hilft nur entweder die sachverständige Überarbeitung des Programms oder das Zurückgehen auf eine ältere Compilerversion.

Die Compilierung sehr alter Programme ist öfter mal schwierig, wenn Programmbibliotheken vorausgesetzt werden, die auf neueren Linuxsystemen garnicht mehr oder nur noch in einer neueren, inkompatiblen Version bereitgestellt werden oder wenn der aktuelle Compiler strenger prüft als dies ältere Compiler taten.

Wenn du selbst compilieren musst, ist der augenblickliche Erfolg also nicht garantiert; mit einiger Erfahrung und dem erforderlichen Know-How ist es aber oft möglich, auftretende Fehler zu beheben.

Woher ich das weiß:Berufserfahrung – Berufstätigkeit als Software-Entwickler

Ich weiß jetzt nicht, welches Programm du dir von Github heruntergeladen hast, aber normalerweise gibt es eine Dokumentation dafür, in welchen dir die Schritte erklärt werden, wie du kompilieren solltest.

Oder für C/C++ Programme gibt es oft auch sogenannte Makefiles, welche dir das Kompilieren abnehmen.

Du musst die offizielle Anleitung eben gut befolgen und alle vorausgesetzten Programme installiert haben. Viele solcher Programme sind auch darauf ausgelegt, auf Linux oder macOS kompiliert zu werden, das sollte aber eigentlich dazustehen. Trotzdem kann es natürlich ab und an zu fehlerhaften Versionen kommen, die dann nicht kompilieren.

Ich arbeite seit Jahren mit und an Open-Source-Projekten und habe allgemein eigentlich keine Probleme. Das kann von Fall zu Fall aber unterschiedlich sein, wenn du das nächste Mal eine Fehlermeldung bekommst, kannst du die im Issues-Tab auf GitHub melden oder in Communitys wie gutefrage.net nach Hilfe fragen.

Woher ich das weiß:Hobby – Hobby-Entwickler seit 2016

nein. hatte einmal ein problem das war aber weil ich auf windows und deswegen einige headers nicht gefunden wurden

Woher ich das weiß:Hobby – hobby programmierer seit 2020