Open Source nervt mich manchmal



  • Hallo zusammen,

    gerade stehe ich wieder vor so einem typischen Problem. Ich benötige auf die Schnelle eine PDF Library und habe podofo gefunden. Ab nach CMAKE damit und zack stellt man fest...Och nee...da fehlen Abhängigkeiten(und nicht zu knapp). Also fängt man an, eine Abhängigkeit nach der anderen herunterzuladen und einzubinden. Dann gehen die Probleme weiter. Einige Abhängigkeiten müssen noch für meine gewünscht Plattform erstellt werden. Blöd nur, wenn die Abhängigkeit wieder unzählige Abhängigkeiten braucht. Was soll der Scheiß?! Das ist mir jetzt nicht nur da aufgefallen sonder in der Vergangenheit bei so einigen Projekten. Sind die zu dämlich oder faul um ein Rundum sorglos Paket bereit zu stellen oder darf man das wegen Lizenzen vielleicht nicht(gerade was das Thema Lizenzen angeht bin ich wenig bis gar nicht fit). Das ist doch alles andere als entwicklerfreundlich. Da werde ich ja schon fast genötiigt mir einfach ne Library zu kaufen die dann ohne weiteres Funktioniert. Kann mir jemand denn Sinn erklären? Vielleicht bin ich dann weniger abgenervt von Open Source.

    Gruß



  • Dafür gibt es eine bewährte Lösung: package manager. Mit yaourt kann ich automatisch Packages von git-Repos erstellen.



  • Ich hätte erwähnen sollen, dass ich Windows und VS User bin:-P


  • Mod

    secondsun schrieb:

    Ich hätte erwähnen sollen, dass ich Windows und VS User bin:-P

    Dann gibst du Open Source die Schuld, wenn das wahre Problem dein abgeschottetes System ist. Alle gängigen Open Source Systeme haben gute Paketmanager und eine große Auswahl fertiger Pakete.



  • Dann weiss ich auch nicht, ist dann aber ein Windows-Problem und kein FOSS-Problem. Vll. kannst du in Cygwin etwas zusammenbasteln. Dependency resolver und package managers gibt's in der FOSS-Welt schon seit Dekaden.



  • Was hat denn jetzt Windows damit zu tun? 🙄 Windows ist ein Betriebssystem, warum soll es sich darum kümmern, für jede Programmiersprache, Compiler-Umgebung usw. ein Paket-Management bereit zu stellen?

    Hier ist eindeutig das Build-System für zuständig und nicht das OS. Wenn ich unter Java Libs ziehen will, gebe ich auch nicht Windows oder Linux die schuld. Da suche ich mir ein Build-System das es kann, bei Java bevorzugt Maven. Perl hat sein eigenes Paket-Management (CPAN). usw.

    Und ja, VS hat ein Paket-Management, mit dem man sehr wohl sehr einfach Libs/Frameworks per Kommandozeile oder einem Mausklick, wie unter Linux, herunter laden und einbinden kann:
    https://www.nuget.org/

    Willst du Boost C++ in VS einbinden? Bitte:
    https://www.nuget.org/packages/boost/

    Und native Packages gibt es unter Nuget recht viele (zlib, OpenSSL, SDL, SFML u.a. dabei):
    https://www.nuget.org/packages?q=Tags%3A"native"

    Aber natürlich müssen weitere C/C++-Libraries in Nuget eingepflegt werden, damit es viel mehr Spaß macht. Nuget ist offen genug, das sich Windows-Entwickler (egal ob für C/C++ oder .NET) beteiligen können.

    Nur weil ein VS-Anfänger nichts von Nuget weiß, heißt das nicht, das es das nicht gibt.



  • secondsun schrieb:

    Vielleicht bin ich dann weniger abgenervt von Open Source

    Als wenn die offenen Quellen das Problem wären und nicht die Tatsache, dass du versuchst fremde Software zu kompilieren.

    Build-Systeme sind von Programmierern für Programmierer. Und je nach Projekt hat man eben entsprechende Abhängigkeiten. Bevor du davon ausgehst, die Entwickler wären blöd oder faul, solltest du überlegen ob du vielleicht einfach nicht die Zielgruppe bist.

    Oder hast du dafür bezahlt? Ich habe auch schon oft die Krise gekriegt, als ich mich durch die Bauanleitung für bezahlte, Closed-Source-Projekte kämpfen musste.

    Und du erwartest ein "ein Rundum sorglos Paket". LOL 🙄



  • Open Source ist nicht für Enduser, darin liegt das Problem.

    Wenn die Programme für Enduser wären, dann würden die Entwickler ein Binary zusammenstellen, bei dem alle Abhängigkeiten schon mitgeliefert werden.

    Dieses Problem ist aber kein Windowsproblem, sondern trifft auch unter Linux zu, nämlich dann, wenn die Software gar nicht über den Paketmanager installiert werden kann.

    Auch da fehlt dann ein statisches lsb-Rundumsorglospaket, weil es von der Open Source Welt dem Endanwender schlichtweg nicht angeboten wird und deswegen ist Open Source nicht für Endanwender.


  • Mod

    😕 Du wirfst Verteilung von Software mit Verfügbarkeit des Quelltextes in einen Hut, dabei sind die Konzepte vollkommen unabhängig.
    Es gibt zahlreiche Beispiele für alle diese Dinge, sowohl für Windows, Linux und alle anderen Systeme:

    • Software, die als vorcompiliertes Binary verteilt wird, deren Quellcode offen verfügbar ist.
    • Software, die als vorcompiliertes Binary verteilt wird, deren Quellcode nicht offen verfügbar ist.
    • Software, die vom Anwender aus dem offen verteilten Quellcode gebaut werden muss.

    Nur die Kombination aus Closed-Source und Verteilung des Quellcodes ist logischerweise nicht sonderlich gängig 😃

    Vielleicht entsteht dadurch der falsche Eindruck, dass Open-Source immer vom Anwender gebaut werden müsste. Dabei ist es bloß die einzige Art von Quellcode, die vom Anwender gebaut werden kann. Der Gegenschluss, dass Open-Source immer vom Anwender gebaut werden muss, ist falsch.


Anmelden zum Antworten