编译LTIB遇到的问题及解决的方法

错误1:

./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");


解决办法:
    之前自己一直在修改/opt/freescale/ltib/usr/src/rpm/BUILD/m4-1.4.16下的stdio.h,但是一直没有解决这个错误。后来才明白原来/opt/freescale/ltib/usr/src/rpm/BUILD/m4-1.4.16下的文件在编译时会被/opt/freescale/ltib/usr/src/rpm/SOURCES/m4-1.4.16.tar.gz/解压文件所覆盖。故我修改/BUILD/m4-1.4.16下的stdio.h文件是在白忙活,BUILD只是一个中间文件夹,每次编译的时候都会被clean。

在 /opt/freescale/ltib/usr/src/rpm/SOURCES$  目录下找到 m4-1.4.16.tar.gz 文件
,在解压后在m4-1.4.16/lib/目录下找到stdio.in.h,修改文件内容如下:
    165 #if defined gets
    166 #undef gets
    167 _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
    168 #endif

然后将修改后的m4-1.4.16文件夹重新打包为m4-1.4.16.tar.gz。
删除 /opt/freescale/ltib/usr/src/rpm/BUILD/m4-1.4.16 后重新运行 ./ltib


错误2:

cannot find /lib/ld-linux.so.3


解决办法:

通过在网上查找,论坛里面给出了一个解决的办法:

首先,先找进入自己对应的目录下修改base_libs.spec文件。我的路径是:从/home/zjh/work/hostPackage/ltib/dist/lfs-5.1/base_libs/base_libs.spec

然后,我们用‘#’注释掉 这两句@ARGV = grep { `file $_` =~ m,ASCII C program text, } @ARGV;
                                                          exit(0) unless @ARGV;  

后重新运行 ./ltib


错误3:

You don't have a working TeX binary (tex) installed anywhere in
your PATH, and texi2dvi cannot proceed without one.  If you want to use
this script, you'll need to install TeX (if you don't have it) or change
your PATH or TEX environment variable (if you do).  See the --help
output for more details


解决办法:


sudo apt-get install texlive
sudo apt-get install texinfo

缺少一个LaTex软件(是一种基于ΤΕΧ的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在20世纪80年代初期开发),这个工具非常强大,有空可以自己深入学习;


错误4:


no find  libbz2.so.1.0


解决办法:

sudo apt-get  install lib32bz2-1.0 libbz2-1.0


错误5 :

compr_lzo.c:31:23: fatal error: lzo/lzo1x.h: No such file or directory


错误5.1: In file included from mkfs.ubifs/mkfs.ubifs.c:25:0:
mkfs.ubifs/mkfs.ubifs.h:48:23: fatal error: uuid/uuid.h: No such file or directory
 #include <uuid/uuid.h>

解决办法:

对于这个类错误,我们可以通过apt-file search ***(头文件名) 查找他们的dev文件进行安装即可如下图所示,因为dev文件中包含了对应头文件的的动态链接库(.so文件)。


sudo apt-get install liblzo2-dev
错误5.1:sudo apt-get install uuid-dev






 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值