Ошибка сборки для darktable 1.6.7 в Ubuntu 12.04 LTS

Я пытаюсь собрать образ программы Darktable 1.6.7 из исходного кода на Ubuntu 12.04 LTS. Я следую инструкциям здесь. В 85% есть ошибка, которую я не знаю, как интерпретировать:

Linking C shared module libgrain.so
/usr/bin/ld: CMakeFiles/grain.dir/introspection_grain.c.o: relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC
CMakeFiles/grain.dir/introspection_grain.c.o: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [src/iop/libgrain.so] Error 1
make[1]: *** [src/iop/CMakeFiles/grain.dir/all] Error 2

Я не знаю где пройти -fPIC как это предполагает. Я также читал, что --enable-shared должны быть переданы ./configure, но в этом случае нет ./configure файл, и я не знаю, что сопоставимый шаг здесь. Любая помощь в понимании и устранении этой ошибки будет принята с благодарностью!

1 ответ

Решение

Я понял это, это было довольно тривиально. Вместо того, чтобы использовать вызов cmake, предложенный на темном сайте, на который я ссылался, я использовал ccmake для настройки и генерации. Он автоматически заполняется флагом C -fPIC где это должно было быть. Тогда это построено отлично.

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