Как создать общий объектный файл из статической библиотеки?Я использую Cygwin.
Правильный ли следующий синтаксис?
gcc -shared -o libexample.so libexample.a
gcc -shared -o libexample.so -Wl,--whole-archive libexample.a
Обратите внимание, что часто вы хотите, чтобы объекты, объединенные в вашем .so, были скомпилированы как PIC, что вам не часто требуется для статической библиотеки.
Может не сработать, но вы всегда можете попробовать:
ar -x libexample.a gcc -shared *.o -o libexample.so
Если он жалуется на -fPIC, то, вероятно, он не будет работать.