Hi!
Ich habe ein Problem. Ich möchte gerne in mein kommerzielles Programm Python einbinden. Ich habe mir also die Sources runtergeladen.
Entweder ich kompilier alles und liefer neben meinem Programm auch die .dll Datei (natürlich unter win) mit und kompilier mein Programm mit der Bibliothek mittels der dynamischen Bibliothek oder ich kompilier alles mittel static linking wo ich komplett den Python Core in mein Programm einbinde und nur noch 1 Datei habe.
1. Ich weiß, hier sind keine Rechtsantworten erlaubt, aber weiß einer wo ich nachschauen kann ob das static-linkage verboten ist in einem kommerziellen Programm? Die Lizenz gibt da mir nicht genug Auskunft drüber.
2. Ich habe ein Problem beim static-linkage. Ich nutze MSVC2005 und habe in den Projekteinstlelungen von 'pythoncore' die Option umgestellt das eine statiche Bibliothek erzeugt werden soll und diese die Endung .lib hat.
Dann habe ich alles kompiliert und die 11 MB große pythoncore.lib bekommen. Dann mein Programm öffnen, den Ordner mit den HeaderDateien in den Projekteinstellungen angeben und die lib Datei in das Projektverzeichnis ziehen, korrekt? Wenn das alles soweit in Ordnung ist, frag ich mich warum er trotzdem linker error Meldungen auswirft.
Kann mir wer helfen?
2>python25.lib(modsupport.obj) : Es wurde ein mit /GL kompiliertes MSIL .netmodule oder module gefunden. Verknüpfung wird mit /LTCG erneut gestartet. Fügen Sie /LTCG zur Verknüpfungsbefehlszeile hinzu, um die Verknüpfungsleistung zu erhöhen.
2>python25.lib(dl_nt.obj) : error LNK2005: _DllMain@12 ist bereits in _myapp_win32_release.lib(myapp_pmain.obj) definiert.
Ich danke euch
Python als statische Bibliothek einbinden
Nein.DonnerCobra hat geschrieben:1. Ich weiß, hier sind keine Rechtsantworten erlaubt, aber weiß einer wo ich nachschauen kann ob das static-linkage verboten ist in einem kommerziellen Programm?
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ich nehme mal an lunar meint, "nein, es ist nicht verboten" und nicht "nein, es weiß niemand wo du nachschauen kannst", was eine gewagte These wäre. Ich denke auch dass es keine Probleme geben sollte Programme unter der PSF-Lizenz (also etwa CPython) statisch in propietäre Programme einzubinden.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Danke für die Korrektur Ich hatte nur den Teil ab "ob" gelesen ...Leonidas hat geschrieben:Ich nehme mal an lunar meint, "nein, es ist nicht verboten" und nicht "nein, es weiß niemand wo du nachschauen kannst", was eine gewagte These wäre.
-
- User
- Beiträge: 53
- Registriert: Mittwoch 9. April 2008, 19:35
Ich danke für eure Hilfe
Eine Frage noch. Ich sehe das viele Programme, die Python Scripting unterstützen ihren eigenen Interpreter mitbringen. Ist das auf dauer nicht eher völlig unübersichtlich wenn man teilweise 6-7 verschiedene Pythoninterpreter auf dem System hat?
Ich bin am abwegen ob ich die Standard Python Installation nehmen soll oder auch einen Inteprreter kompiliert mitliefern soll.
Danke und gute n8.
Eine Frage noch. Ich sehe das viele Programme, die Python Scripting unterstützen ihren eigenen Interpreter mitbringen. Ist das auf dauer nicht eher völlig unübersichtlich wenn man teilweise 6-7 verschiedene Pythoninterpreter auf dem System hat?
Ich bin am abwegen ob ich die Standard Python Installation nehmen soll oder auch einen Inteprreter kompiliert mitliefern soll.
Danke und gute n8.