首页 / UBUNTU / Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar
Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1810字,纯文字阅读大概需要3分钟。
内容图文
![Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar](/upload/InfoBanner/zyjiaocheng/933/7218228705124abcb4d279b6df310528.jpg)
一、问题描述。
Ubuntu下对tslib源码进行交叉编译出现报错,如下:
ms@ubuntu:~/.../tslib$ ./tslib.sh
libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/share/libtool'
autoreconf: libtoolize failed with exit status: 1
./tslib.sh: 6: ./tslib.sh: ./configure: not found
make: *** No targets specified and no makefile found. Stop.
make: Nothing to be done for `install'.
ms@ubuntu:~/.../tslib$
二、问题分析。
交叉编译器不匹配问题。编译内核的时候搞用了一个编译器,编译qt的时候又用了另一个交叉编译工具,存在两套编译工具。一个是TI官方提供的编译器 cross-tools-am335x-4.5.3.tar.bz2,用于编译Uboot和Kernel;另一个是专用于编译Qt库的编译器 arm-2009q3.tar.bz2,如果您编译Qt程序或者是Qt库文件,建议使用专门应用于Qt编译的编译器 arm-2009q3.tar.bz2。
三、解决方案。
1、方案一(网上搜寻,未验证):在系统目录中创建 ti-sdk-am335x-evm 文件夹,将linux-devkit 放到这个文件夹中。
mkdir ti-sdk-am335x-evm
cp -rf ./linux-devkit ti-sdk-am335x-evm/
./configure CC=arm-linux-gcc-4.3.5 --build=i686-pc-linux --target=arm-linux --prefix=/opt/tslib-1.3 --host=arm-linux ac_cv_func_malloc_0_nonnull=yes --enable-inputapi=yes
CC=arm-linux-gcc-4.3.5 ./configure --prefix=/opt/tslib-1.3 --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
修改./config.h 将文件中的 #define malloc rpl_malloc 这句话屏蔽。
gedit ./config.h
make
make install
2、方案二:更换交叉编译工具,使用arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2,问题得到解决,编译成功。(此交叉编译工具支持c++11)
附:
--host:指定目标机的平台类型。一般格式为CPU类型-操作系统名称。比如,目标机的CPU为arm,操作系统为linux,可以写为--host=arm-linux。
--prefix:这是安装路径的前缀,即编译结果放置的位置。默认值是/usr或者/usr/local,交叉编译时不能使用默认值,否则它会覆盖你本机的文件,所以要指定一个路径。比如,可以指定为--prefix=/work/cross/rootfs/usr。
内容总结
以上是互联网集市为您收集整理的Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar全部内容,希望文章能够帮你解决Ubuntu下交叉编译tslib时报错:libtoolize: $pkgltdldir not a directory: `/home/xteda/am335xt3/linux-devkit/shar所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。