У меня есть рабочий проект cmake, который мне нужно переместить в qmake.Включить системную библиотеку с qmake на osx
Все работает, но включает в себя библиотеку под названием octomap.
Я установил (Sudo сделать установку) octomap в системе
/usr/local/lib/liboctomap.a
/usr/local/lib/liboctomap.dylib
и заголовки в
/usr/local/lib/include/octomap/
Допустим, проект составе:
foo.h
...
#include <octomap/OcTree.h>
octomap::OcTree tree(0.1);
...
fo o.cpp
...
#include <octomap/OcTree.h>
using namespace octree;
tree.doSomething();
...
foo.pro
...
unix|win32: LIBS += -loctomap
INCLUDEPATH += /usr/local/include/
...
Компиляция приводит к ошибке: Символ (ы) не найдено для архитектуры x86_64 благодаря
Undefined symbols for architecture x86_64:
"octomap::OcTreeNode::createChild(unsigned int)", referenced from:
octomap::OccupancyOcTreeBase<octomap::OcTreeNode>::updateNodeRe...[a very long stack]
, которые должны означает, что Библиотека octomap не связана, и я попытался также добавить ее в проект, используя pkgconfig и используя абсолютный путь. Все они приводят к одной и той же ошибке, а если я использую ее в проекте cmake, она работает нормально.
Вам нужно установить путь к библиотеке, где можно также искать библиотеку. –
Да, я забыл сказать, что я также пробовал с LIBS + = -L/usr/local/lib -loctomap и он не работал:/ – jalone