| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > GNU toolchain > Как исправить ошибки поиска библиотек в cmake? |
| Автор: rMaveric 5.9.2015, 11:13 | ||
| Пытаюсь разобраться с cmake для автоматизации сборки кросплатформенных приложений. Дошел до использования сторонних библиотек и столкнулся со следующей проблемой. https://github.com/dmitrygvyalkov/curlhtml/. В качестве примера был взят код с Curl, который прекрасно компилируется и работает. Составил CMakeLists.txt для данного проекта. И попытался собрать, сборку тестов провожу в 2-х системах FreeBSD 10 и Fedora 21. И наткнулся на проблему с поиском библиотек. Сломал за 3 дня поиска голову, но проблему так и не решил.
При этом плагин поиска FindLibXml2.cmake лежит в положенном ему месте. Но не находит. Под FreeBSD 10 эта же операция ошибки не выдает и создает Makefile, который не работает. При поиске проблем обнаружил, что поиск библиотеки в переменную LIBXML2_INCLUDE_DIRS вместо правильного пути (/usr/local/include/libxml2/) записывает следующий /usr/local/include/usr/include/usr/include И при попытке сборки полученным Makefile получаем ошибку о невозможности найти заголовочные файлы в указанных директориях. Если вручную переписать значение LIBXML2_INCLUDE_DIRS, то сформированный Makefile прекрасно собирает программу. После столь долгого и, прошу прощения, сумбурного объяснения два вопроса. 1. Кто виноват? (как понимаю, неправильные модули поиска библиотеки LibXml2 для cmake?) 2. Что делать? (как обеспечить "безпроблемную" сборку на разных системах, ведь подобные глюки могут проявляться на разных ОС и с разными библиотеками? Все не проверить, и я как раз по этой причине и хочу использовать cmake)? |
| Автор: leniviy 5.9.2015, 15:44 | ||
У меня находит. Проверьте наличие файлов:
|