разместить независимый код для общего объектного файла в cmake? - PullRequest
0 голосов
/ 30 мая 2018

Мы создали общий объектный файл и связали его с нашим исполняемым файлом:

add_executable(a ${A_SRC})
add_library(testso SHARED src/mainlib.cc test1.cc test2.cc)
target_link_libraries(a, testso)

мы заметили, что код компилируется без -fPIC, но в ссылке используется -fPIC:

g++ -std=c++11 -g -c -i../../src ./test1.cc
g++ -std=c++11 -shared -fPIC ../mainlib.cc test1.o -o testso.so

Требуется ли флаг -fPIC для каждого файла?В какой-то момент мы потерпим крах или это нормально?

...