Ошибка компиляции с пакетом MPFR на Mac
Когда я пытаюсь скомпилировать вновь установленный пакет MPFR, я получаю следующую ошибку:
Undefined symbols for architecture x86_64:
"_mpfr_init2", referenced from:
_main in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Я использую Codelite на MacBook Pro и думаю, что успешно установил пакет, используя инструкцию на сайте.
Есть идеи, как это решить?
1 ответ
Исходя из ограниченной информации, я подозреваю, что вы не связываете библиотеку MPFR во время фазы связывания main.cpp. Какую команду вы используете?
Удостоверься что -lmpfr
передается в конце команды clang++, например:
clang++ main.cpp -lmpfr
или же:
clang++ main.cpp -c
clang++ main.o -lmpfr
Если libmpfr.so установлен в нестандартном месте, то вам нужно указать компилятору, где, используя -L
опция:
clang++ main.cpp -L"$MPFR_PATH" -lmpfr
или же:
clang++ main.cpp -c
clang++ main.o -L"$MPFR_PATH" -lmpfr
Если нет, то, пожалуйста, предоставьте больше информации.