Кросс-компиляция iotivity из x86_64 Ubuntu в Arm64 Linux
Я новичок в iotivity и хочу скомпилировать его для устройства arm64 linux. Я работаю над Ubuntu 14.04 LTS (x86_64). У меня есть набор инструментов для устройства руки, и я попробовал этот код:
scons TARGET_ARCH=arm TARGET_OS=linux TC_PREFIX=/home/toolchain_folder/arm-linux-gnueabihf/bin
и я получаю эти ошибки:
************************************ Warning **********************************
* Enviornment variable TC_PREFIX/TC_PATH is set. It will change the default *
* toolchain, if it isn't what you expect you should unset it, otherwise it may*
* cause inexplicable errors. *
*******************************************************************************
Reading linux configuration script
Checking for POSIX Thread Support...no
HEAD is now at a088996 Update "make release" target
*********************************** Info: *****************************************
* Using FORKED copy of libCoap located in: *
* resource/csdk/connectivity/lib/libcoap-4.1.1 *
***********************************************************************************
Checking for C++ header file arpa/inet.h... no
Checking for C++ header file fcntl.h... no
Checking for C++ header file grp.h... no
Checking for C++ header file in6addr.h... no
Checking for C++ header file linux/limits.h... no
Checking for C++ header file memory.h... no
Checking for C++ header file netdb.h... no
Checking for C++ header file netinet/in.h... no
Checking for C++ header file pthread.h... no
Checking for C++ header file pwd.h... no
Checking for C++ header file stdlib.h... no
Checking for C++ header file string.h... no
Checking for C++ header file strings.h... no
Checking for C++ header file sys/socket.h... no
Checking for C++ header file sys/stat.h... no
Checking for C++ header file sys/time.h... no
Checking for C++ header file sys/timeb.h... no
Checking for C++ header file sys/types.h... no
Checking for C++ header file sys/unistd.h... no
Checking for C++ header file syslog.h... no
Checking for C++ header file time.h... no
Checking for C++ header file unistd.h... no
Checking for C++ header file uuid/uuid.h... no
Checking for C++ header file windows.h... no
Checking for C++ header file winsock2.h... no
Checking for C++ header file ws2tcpip.h... no
Given Transport is ALL
Given OS is linux
BUILD_SAMPLE is ON
MQ flag is OFF
CA Transport is ALL
Reading ca script ALL
Reading common folder script
Reading util folder script
Reading IP adapter script
Reading BLE adapter script for linux
Include path is ['../api', '/home/myfolder/Iotivity/iotivity/deps/linux/include', '/home/myfolder/Iotivity/iotivity/extlibs/tinycbor/tinycbor/src', '/home/myfolder/Iotivity/iotivity/out/linux/arm/release/resource/csdk/logger/include', '../../c_common', '/home/myfolder/Iotivity/iotivity/resource/c_common', '/home/myfolder/Iotivity/iotivity/out/linux/arm/release/resource/c_common/oic_malloc/include', '/home/myfolder/Iotivity/iotivity/out/linux/arm/release/resource/c_common/oic_string/include', '/home/myfolder/Iotivity/iotivity/out/linux/arm/release/resource/c_common/oic_time/include', '/home/myfolder/Iotivity/iotivity/out/linux/arm/release/resource/c_common/ocrandom/include', '/usr/include/uuid', '../lib/libcoap-4.1.1/include', '../inc', '/home/myfolder/Iotivity/iotivity/resource/csdk/logger/include', '../common/inc', '../util/inc', 'common/inc/', '/home/myfolder/Iotivity/iotivity/resource/csdk/logger/include/', '/usr/include/gio-unix-2.0/', '/usr/include/glib-2.0', '/usr/lib/x86_64-linux-gnu/glib-2.0/include']
Files path is ['./../common/src/uarraylist.c', './../common/src/ulinklist.c', './../common/src/uqueue.c', './../common/src/caremotehandler.c', './../common/src/camutex_noop.c', './../util/src/cautilinterface.c', './adapter_util/caadapterutils.c', './adapter_util/cafragmentation.c', './cablockwisetransfer.c', './caconnectivitymanager.c', './cainterfacecontroller.c', './camessagehandler.c', './canetworkconfigurator.c', './caprotocolmessage.c', './caqueueingthread.c', './caretransmission.c', './ip_adapter/caipadapter.c', './ip_adapter/caipserver.c', './ip_adapter/linux/caipnwmonitor.c', './bt_le_adapter/caleadapter.c', './bt_le_adapter/linux/characteristic.c', './bt_le_adapter/linux/descriptor.c', './bt_le_adapter/linux/service.c', './bt_le_adapter/linux/advertisement.c', './bt_le_adapter/linux/utils.c', './bt_le_adapter/linux/central.c', './bt_le_adapter/linux/peripheral.c', './bt_le_adapter/linux/client.c', './bt_le_adapter/linux/server.c', './bt_le_adapter/linux/recv.c', './bt_le_adapter/linux/caleinterface.c', './bt_le_adapter/linux/object_manager-glue.c', './bt_le_adapter/linux/bluez-glue.c']
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*** Checking for installation of google unit test 1.7.0 ***
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*** Checking for installation of hippomocks ***
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
Checking for C function strptime()... no
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of hippomocks ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of google unit test 1.7.0 ***
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are *
* installed! *
*******************************************************************************
*** Checking for installation of google unit test 1.7.0 ***
*********************************** Warning ***********************************
* You are trying cross build, please make sure (arm) version libraries are
* installed! *
*******************************************************************************
Checking for C++ library boost_thread... no
Did not find boost_thread, exiting!
1 ответ
Решение
Вам необходимо включить путь для boost_library в коде IoTctivity. Проверьте следующую ссылку, в которой он должен вам помочь:
https://wiki.iotivity.org/iotivity_porting_to_arm_based_platforms