CMake Linux Shared Library unter Windows erzeugen



  • Hallo liebe Community,

    ich arbeite neulich mit CMake und möchte gerne mehrere source-files zu einer shared library für Linux linken. Das ganze soll aber unter Windows passieren. Ich habe MinGW/MSYS usw. alles installiert. Kann auch .a oder .dll librarys erzeugen aber halt keine .so Dateien, welche ich unter Linux nutzen kann.

    Geht das überhaupt? Wenn ja, wie? Was muss ich dazu in der CMakeLists.txt eintragen?

    Vielen Dank! 🙂



  • Ja, sowas geht grundsätzlich schon. Du brauchst halt einen GCC, der für Linux-Targets kompiliert wurde, plus Binutils usw. Mit anderen Worten: Eine Cross-Compiling-Toolchain. Wirst du dir wahrscheinlich selbst bauen dürfen, kA wie bequem das unter Windows zu machen ist. Wenn du das noch nie vorher gemacht hast, wird das aber vermutlich mit etwas Lernaufwand verbunden sein. Such einfach mal ein bisschen nach Anleitungen um eine Cross-Compiling-Toolchain zu erstellen.

    Der einfachere Weg ist wahrscheinlich fix eine Linux-VM einzurichten und nativ zu kompilieren. Oder anstatt fertigen Binarys einfach den Sourcecode verteilen, wir Linuxer bauen uns das dann schon selbst. 😉


Anmelden zum Antworten