meta-ros/recipes-extended/libpoco/libpoco_1.4.6p1.bb

28 lines
874 B
BlitzBasic
Raw Normal View History

DESCRIPTION = "POCO C++ Libraries"
HOMEPAGE = "http://pocoproject.org"
LICENSE = "BSL-1.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e4224ccaecb14d942c71d31bef20d78c"
libpoco: openssl required for libpoco when compiling pcl-ros When compiling pcl-ros, bitbake aborts because for compiling the Crypto library in libpoco, it needs the openssl headers. The condensed error output is ** Compiling src/CipherKeyImpl.cpp (debug, shared) arm-oe-linux-gnueabi-g++ -march=armv5te -marm -mthumb-interwork -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm -I ... -DPOCO_BUILD_HOST=host -DPOCO_NO_WSTRING -DPOCO_UNBUNDLED -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_REENTRANT -D_THREAD_SAFE -DPOCO_NO_FPENVIRONMENT -g -D_DEBUG -fPIC -c src/CipherKeyImpl.cpp -o ... In file included from include/Poco/Crypto/CipherKeyImpl.h:44:0, from include/Poco/Crypto/CipherKey.h:44, from src/CipherKey.cpp:37: include/Poco/Crypto/OpenSSLInitializer.h:45:33: fatal error: openssl/opensslconf.h: No such file or directory #include <openssl/opensslconf.h> ^ compilation terminated. In file included from include/Poco/Crypto/CipherKeyImpl.h:44:0, from src/CipherKeyImpl.cpp:37: include/Poco/Crypto/OpenSSLInitializer.h:45:33: fatal error: openssl/opensslconf.h: No such file or directory #include <openssl/opensslconf.h> ^ compilation terminated. make[1]: *** [.../tmp-eglibc/work/armv5te-oe-linux-gnueabi/libpoco/1.4.6p1-r0/poco-1.4.6p1-all/Crypto/obj/Linux/armv5te/debug_shared/CipherKey.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make -C /home/lukas/oe-core/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/libpoco/1.4.6p1-r0/poco-1.4.6p1-all/Util make[1]: *** [.../tmp-eglibc/work/armv5te-oe-linux-gnueabi/libpoco/1.4.6p1-r0/poco-1.4.6p1-all/Crypto/obj/Linux/armv5te/debug_shared/CipherKeyImpl.o] Error 1 make[1]: Entering directory `/home/lukas/oe-core/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/libpoco/1.4.6p1-r0/poco-1.4.6p1-all/Util'
2013-08-04 14:59:17 +08:00
DEPENDS = "expat zlib libpcre openssl"
SRC_URI = "${SOURCEFORGE_MIRROR}/poco/poco-${PV}-all.tar.bz2 \
libpoco: adding a patch to link correctly with pcre The error message when compiling nodelet, which links the poco library, is: | Linking CXX executable devel/lib/nodelet/nodelet | /home/lukas/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/nodelet.dir/link.txt --verbose=1 | /home/lukas/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/armv5te-oe-linux-gnueabi/arm-oe-linux-gnueabi-g++ -march=armv5te -marm -mthumb-interwork --sysroot=/home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm -O2 -pipe -g -feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden -fpermissive -march=armv5te -marm -mthumb-interwork --sysroot=/home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm -O2 -pipe -g -feliminate-unused-debug-types -fpermissive -fvisibility-inlines-hidden -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/nodelet.dir/src/nodelet.cpp.o -o devel/lib/nodelet/nodelet -rdynamic devel/lib/libnodeletlib.so -luuid -lbondcpp -luuid -lcpp_common -lroscpp_serialization -lrostime -lboost_date_time-mt -lboost_system-mt -lboost_thread-mt -lroscpp -lboost_signals-mt -lboost_filesystem-mt -lrosconsole -lboost_regex-mt -llog4cxx -lxmlrpcpp -ltinyxml -lclass_loader -lPocoFoundation -ldl -lconsole_bridge -lroslib -Wl,-rpath,/home/lukas/oe-core/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/nodelet/1.8.0-r0/nodelet_core-1.8.0/nodelet/build/devel/lib: | /home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm/usr/lib/libPocoFoundation.so: undefined reference to `_pcre_ucd_stage1' | /home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm/usr/lib/libPocoFoundation.so: undefined reference to `_pcre_ucd_records' | /home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm/usr/lib/libPocoFoundation.so: undefined reference to `_pcre_ucp_gentype' | /home/lukas/oe-core/build/tmp-eglibc/sysroots/qemuarm/usr/lib/libPocoFoundation.so: undefined reference to `_pcre_ucd_stage2' | collect2: error: ld returned 1 exit status | make[2]: *** [devel/lib/nodelet/nodelet] Error 1
2013-07-29 22:20:33 +08:00
file://OE \
file://add_pcre_utf8_objects.patch"
SRC_URI[md5sum] = "2598b53d481e2bd3fb92bd23172abe53"
SRC_URI[sha256sum] = "95af0382257614c70841629c928184cddc228831a8bfc4c57399931bed8a16f8"
S = "${WORKDIR}/poco-${PV}-all"
inherit autotools binconfig pkgconfig
TARGET_CC_ARCH += "${LDFLAGS}"
EXTRA_OECONF += "--config=OE --no-samples --no-wstring --no-tests --unbundled \
--omit=Data/MySQL,Data/SQLite,Data/ODBC,PageCompiler \
"
do_configure_prepend() {
install ${WORKDIR}/OE ${S}/build/config/OE
export POCO_TARGET_OSARCH=${TARGET_ARCH}
}