7 Stimmen

Kompilieren von C++ in "echte" Programme

Ich weiß, wie man g++ und all das verwendet, um C++-Programme zu kompilieren. Meine Frage ist, wenn ich einen Code habe, der von verschiedenen Bibliotheken abhängt, wie kann ich ihn in eine einfache ausführbare Datei kompilieren, die ich jedem schicken kann. In diesem Fall wäre ich zufrieden, wenn ich es auf dem Betriebssystem x belassen könnte.

Ich würde gerne wissen, wie man ein "echtes" Programm kompiliert, nicht nur eine ausführbare Datei, die ich lokal ausführen kann. Ich habe versucht, dies zu googeln, habe aber nicht viel gefunden.

Muss ich eine Installationssoftware verwenden? Ich weiß, dass man unter Windows einige einfache .exe-Dateien erstellen kann, die allgemeine DLL-Dateien verwenden.

0 Stimmen

Ich weiß nicht, warum jemand diese Frage heruntergestuft hat. Ich habe sie aber wieder hochgevotet. Es scheint eine sehr berechtigte Frage zu sein.

5 Stimmen

Die Tags "os" und "x" vereinen sich nicht auf magische Weise zu "osx". Genauso wie sich "der" "Vergewaltiger" nicht auf magische Weise zu einem Therapeuten vereinigen lässt.

8voto

Drakosha Punkte 11577

Sie suchen nach einer "statischen Verlinkung". Dadurch wird der gesamte benötigte Code aus den Bibliotheken in Ihre ausführbare Datei importiert. Beachten Sie, dass die ausführbare Datei dadurch größer wird. Wenn Sie Standardbibliotheken verwenden, sollten diese bei der Standardinstallation des Betriebssystems vorhanden sein.

Versuchen Sie es mit dem "-static"-Flag von g++. Wenn Sie "ldd your_executable_name" ausführen, sollten alle Bibliotheken angezeigt werden, die Ihre ausführbare Datei verwendet (dynamisch gelinkt).

3voto

Ringding Punkte 2846

Da es sich um Mac OS X handelt, möchten Sie wahrscheinlich ein Bündel erstellen. Qt Software hat ein sehr nützliches Einsatzleitfaden für den Einstieg in diese Art von Aktivität.

0voto

Hongseok Yoon Punkte 2918

Sie können die Option -static oder -s für statisches Linken in gcc oder g++ verwenden

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X