Что делает флаг компиляции -fPIC?

Что делает флаг -fpic? Я хочу установить библиотеку ( OpenSFM), и заявлено, что для этого потребуется, чтобы Ceres Solver был собран и установлен с флагом компиляции -fPIC.

Проблема в том, что я уже установил Ceres Solver без флага -fPIC, а другая библиотека уже зависела от него. Как я могу решить это?

1 ответ

Решение

Хорошее объяснение для -fPIC можно найти здесь.

Я думаю, что главный вопрос здесь заключается в том, можете ли вы продолжать устанавливать OpenSfM, не перестраивая Ceres Solver. Насколько я знаю, ты не можешь.

Самое простое, что вы можете сделать, это перестроить Ceres Solver и переустановить версию PIC.

cmake .. -DCMAKE_C_FLAGS=fPIC \
   -DCMAKE_CXX_FLAGS=-fPIC \ 
   -DSOMEOTHERARGUMENTSTHATYOUMIGHTHAVE

Дайте нам знать, как это сработало для вас.:)

Другие вопросы по тегам