linux - 从x86_64 ubuntu到arm64 linux的交叉编译iotivity

标签 linux arm cross-compiling scons iotivity

我是 iotivity 的新手,我想为 arm64 linux 设备交叉编译它。我正在 ubuntu 14.04 LTS (x86_64) 上工作。 我有 ARM 设备的工具链,我尝试了这个代码:

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!

最佳答案

您需要在 IoTivity 代码中包含 boost_library 的路径,请检查以下链接,它应该可以帮助您解决此问题:

https://wiki.iotivity.org/iotivity_porting_to_arm_based_platforms

关于linux - 从x86_64 ubuntu到arm64 linux的交叉编译iotivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42970503/

相关文章:

c - 使用 sigaction 学习 POSIX 信号

windows - 从 USART 读取数据

c - 查找 __attribute__(section) 中的最后一个变量

linux - 为 cortex-a8 设备交叉编译时出现链接器问题

java - JDBC mysql 连接在 Win8 上比 Ubuntu14 慢得多

linux - 如何在gnuplot中将字符串转换为数字

linux-kernel - 在 ARM 中禁用内存页的写保护

GCC:为 ARM 构建交叉编译器 - 未找到 pthread.h

regex - 将文件夹中的所有图像移动到子文件夹,并将文本文件中对这些图像的所有引用更新到它们的新位置?

iphone - 使用 Go 为 iPhone 应用程序编写库