导读:
这两天一直在移植blueZ到arm-linux平台,但是在交叉编译utils包的时候总是有问题.提示为定义的符号:PATH_MAX.到现在还是不知道具体哪里的问题. 开始的时候看帮助文档,里边说必须要libusb的支持,所以怀疑是自己没有这个库.于是在网上查这个库找到了官网:libusb.sourceforge.net.发现没有针对arm的版本,于是下载了原代码,自己交叉编译.但是在编译的时候出现错误:ld 终止于signal 11.在网上查这个错误,得到的结论是这个错误多半和系统的硬件有关系,最大的可能是内存有问题.但是我是在vmware虚拟机里边跑的linux.难道这个环境下的硬件模拟的不标准?不可能阿 用了这么久 也没有见大家出过这种问题.于是我在这个问题上困住了.
今天突然想起来只是一个常量没有声明,于是自己在文件里添加了这个常量的声明试试看还会有什么样的错误.结果居然便以通过了,传到arm开发板上就可以运行了.真是出人意料.但是这种解决办法显得有点低级,而且可能会造成一些未知的问题.但是与其浪费时间在这个上边,不如先忽略这个问题,进行后边的工作,把重要的东西先做完再说.希望不会引起其它的问题.
这两天用的最多的命令就是 configure脚本程序了.其实整个移植就只对这个进行了设置就可以了.不像操作系统的那么麻烦.在configure后边跟上各种参数就可以配置编译器和各种路径,其中常见的有:
prefix=path 配置安装的路径.
CC=gcc 配置c编译器
CXX=G++ 配置c++编译器
CFLAFGS CPPFLAGS配置编译器选项
以及其它一些,可以在./configure --help 查到.
现在蓝牙协议栈已经一直好了,前两天自己编的小程序也可以在板子上跑了,可以搜索到周围的蓝牙设备.
后边的工作就容易开展了.后面的时间还是得多放在其他方面点比较好了:)
本文转自
http://blog.csdn.net/ifq/archive/2006/06/06/776725.aspx
这两天一直在移植blueZ到arm-linux平台,但是在交叉编译utils包的时候总是有问题.提示为定义的符号:PATH_MAX.到现在还是不知道具体哪里的问题. 开始的时候看帮助文档,里边说必须要libusb的支持,所以怀疑是自己没有这个库.于是在网上查这个库找到了官网:libusb.sourceforge.net.发现没有针对arm的版本,于是下载了原代码,自己交叉编译.但是在编译的时候出现错误:ld 终止于signal 11.在网上查这个错误,得到的结论是这个错误多半和系统的硬件有关系,最大的可能是内存有问题.但是我是在vmware虚拟机里边跑的linux.难道这个环境下的硬件模拟的不标准?不可能阿 用了这么久 也没有见大家出过这种问题.于是我在这个问题上困住了.
今天突然想起来只是一个常量没有声明,于是自己在文件里添加了这个常量的声明试试看还会有什么样的错误.结果居然便以通过了,传到arm开发板上就可以运行了.真是出人意料.但是这种解决办法显得有点低级,而且可能会造成一些未知的问题.但是与其浪费时间在这个上边,不如先忽略这个问题,进行后边的工作,把重要的东西先做完再说.希望不会引起其它的问题.
这两天用的最多的命令就是 configure脚本程序了.其实整个移植就只对这个进行了设置就可以了.不像操作系统的那么麻烦.在configure后边跟上各种参数就可以配置编译器和各种路径,其中常见的有:
prefix=path 配置安装的路径.
CC=gcc 配置c编译器
CXX=G++ 配置c++编译器
CFLAFGS CPPFLAGS配置编译器选项
以及其它一些,可以在./configure --help 查到.
现在蓝牙协议栈已经一直好了,前两天自己编的小程序也可以在板子上跑了,可以搜索到周围的蓝牙设备.
后边的工作就容易开展了.后面的时间还是得多放在其他方面点比较好了:)
本文转自
http://blog.csdn.net/ifq/archive/2006/06/06/776725.aspx