Я компилирую проект qt5 C++ с компиляцией gnu49 при соединении с несколькими другими dylib (armadillo, boost libs и т. Д.).) на Mac OSX El Captitan с флагом C++ 11 и обычными флагами флага qt. Проект компилируется отлично, но чтобы сделать его более переносимым на нескольких других машинах, я пытаюсь статически связать несколько динамических библиотек. Я добавил -статический флаг перед библиотекой (для статической привязки) (например, -static -lboost_thread
), как описано здесь.Статическая связь с dylib ld: библиотека не найдена для -lcrt0.o collect2: error: ld возвращен 1 статус выхода
https://gcc.gnu.org/ml/gcc/2000-05/msg00517.html
Однако, я получаю следующее сообщение об ошибке.
ld: library not found for -lcrt0.o collect2: error: ld returned 1 exit status
Я проверял, что ошибка возникает только при попытке связывать статически, а не с динамическим связыванием.
спасибо за продуманный ответ – Pal