Poco C ++ с использованием Raspberry Pi и Qt

Можно ли скомпилировать библиотеки Poco, чтобы я мог использовать их на Raspberry Pi с моим проектом Qt? В настоящее время у меня есть проект Qt, работающий на Raspberry Pi, за исключением функций, использующих Poco. Я думал, что могу скомпилировать Poco прямо на Raspberry Pi и просто скопировать скомпилированные библиотеки и файлы заголовков на свою машину Ubuntu, которая выполняет компиляцию моего проекта Qt. я включен

INCLUDEPATH += /path/to/poco/libs/compiled/for/raspberrypi/include  
DEPENDPATH += /path/to/poco/libs/compiled/for/raspberrypi/include  
LIBS += -L/path/to/poco/libs/compiled/for/raspberrypi -lPocoFoundation -lPocoNet  
target.path = /home/pi/path/to/my/executable  
INSTALLS += target

в моем файле .pro.

Но я получаю следующую ошибку в первый раз, когда компилятор встречает Poco include:

/home/jon/opt/gcc-4.7-linaro-rpi-gnueabihf/bin/arm-linux-gnueabihf-g++ -c -pipe -marm -mfpu = vfp -mtune = arm1176jzf-s -march = armv6zk -mabi = aapcs -linux -mfloat-abi = жесткий --sysroot = / mnt / rasp-pi-rootfs -g -std = c ++ 0x -Wall -W -D_REENTRANT -fPIC -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_PLUGIN -DQT_PLUGIN -DQT_PLUGIN -DQT_PLUGIN -D usr / local / qt5pi / mkspecs / devices / linux-rasp-pi-g ++ -I ../../../ BeatQtPlayer / src / pocowebserverplugin -I ../../../ BeatQtPlayer / src -I / home / jon / tmp / BeatQtPlayer / src / pocowebserverplugin /../../ external_tools / poco-1.4.6p2 / lib_raspberrypi / include -I / mnt / rasp-pi-rootfs / usr / local / qt5pi / include -I / mnt / rasp-pi-rootfs / usr / local / qt5pi / include / QtNetwork -I / mnt / rasp-pi-rootfs / usr / local / qt5pi / include / QtCore -I. -Я. -o pocowebserverplugin.o ../../../BeatQtPlayer/src/pocowebserverplugin/pocowebserverplugin.cpp В файле, включенном из ../../../BeatQtPlayer/src/pocowebserverplugin/pocoweb из ../../../BeatQtPlayer/src/pocowebserverplugin/pocowebserverplugin.cpp:1: ../../../BeatQtPlayer/src/pocowebserverplugin/requesthandler.h:4:48: фатальная ошибка : Poco / Net / HTTPRequestHandlerFactory.h: Нет такого файла или каталога, компиляция прекращена.


person Jon Helt-Hansen    schedule 27.11.2013    source источник


Ответы (2)


Это пути включения, на которые смотрит ваш компилятор. Где-то там есть Poco / Net?

-I/usr/local/qt5pi/mkspecs/devices/linux-rasp-pi-g++ 
-I../../../BeatQtPlayer/src/pocowebserverplugin 
-I../../../BeatQtPlayer/src 
-I/home/jon/tmp/BeatQtPlayer/src/pocowebserverplugin/../../external_tools/poco-1.4.6p2/lib_raspberrypi/include 
-I/mnt/rasp-pi-rootfs/usr/local/qt5pi/include 
-I/mnt/rasp-pi-rootfs/usr/local/qt5pi/include/QtNetwork 
-I/mnt/rasp-pi-rootfs/usr/local/qt5pi/include/QtCore 
-I. 
-I. 
person Duck    schedule 27.11.2013
comment
Argggh .. Я не мог видеть лес за деревьями :( Сделал дубликат проекта, чтобы поиграть с этим - скопировал библиотеки не в тот проект .. Ну, глупый, я. Спасибо, что объяснил это для меня, и извините за зря тратишь время. - person Jon Helt-Hansen; 28.11.2013

Убедитесь, что вы правильно настроили пути включения для самой библиотеки Poco. Внутренние заголовки Poco могут нуждаться в других каталогах, кроме корневого пути '/path/to/.../include/', для включения в путь включения.

person p12    schedule 27.11.2013