Ich habe ein Projekt mit einer Reihe von C ++ - und Python / Cython-Dateien. Bis jetzt habe ich den C ++ Teil primär entwickelt und mit qmake zu einer statischen Bibliothek kompiliert. Einige wenige Methoden werden mit boost :: python bereitgestellt und aus einer .py-Datei ausgeführt.
Ich wollte jetzt das Ganze in eine eigenständige ausführbare Datei kompilieren.
Meine Frage jetzt: Was ist der beste Weg, dies zu tun? Ich habe versucht, zu Cython zu wechseln, die Python-Dateien zu kompilieren und die Bibliothek zu verlinken. Aber es scheint, dass es keinen direkten Weg mit distutils / setup.py gibt, um eine ausführbare Datei, nur gemeinsame Bibliotheken, zu kompilieren.
Gibt es eine Möglichkeit,
Damit kann ich eine Menge boost :: python wrapper stuff loswerden und eine ordentliche Mischung aus c ++ / python bekommen, ohne eine shared library importieren zu müssen und das ganze Zeug mit pyinstaller zu packen?
Sie sollten nachsehen:
Da Python Ihr Einstiegspunkt ist, können Sie einen eigenständigen Interpreter, eine Umgebung und einen Ressourcenstandort in einer app / exe / binary bündeln. Es sammelt alle Ihre Bibliotheksmodule in seinen eigenständigen Site-Paketen
Wenn Sie keine normalen reinen py-Dateien verwenden und nur Cython-Dateien haben, dann ist es auch möglich, einen Interpreter in einen von ihnen als Einstiegspunkt mit einem --embed-Flag nach Cython einzubetten:
Ссылка
Beachten Sie, dass dies ein ähnlicher "Freeze" -Ansatz für die zuvor genannten Packoptionen ist, aber nicht die zusätzliche Länge zum Erstellen eines eigenständigen env
Tags und Links python compilation c++ cython