制作交叉编译file工具

luther@gliethttp:~$ wget http://ftp.de.debian.org/debian/pool/main/f/file/file_4.26.orig.tar.gz
luther@gliethttp:~/file-4.26$ ./configure --host=arm-linux --datarootdir=/usr/share --prefix=/home/luther/gliethttp
luther@gliethttp:~/file-4.26$ make  
编 译之后最后会有错误提示,没关系因为最后make会执行编译出来的file ,因为file是arm的所以当然会报错,
后面我们会在arm开发板上 执行报错操作,生成magic.mgc类型库文件.
luther@gliethttp:~/file-4.26$ make install
luther@gliethttp:~/file-4.26$ tree ~/gliethttp
/home/luther/gliethttp
|-- bin
|   `-- file
|-- include
|   `-- magic.h
`-- lib
    |-- libmagic.a
    |-- libmagic.la
    |-- libmagic.so -> libmagic.so.1.0.0
    |-- libmagic.so.1 -> libmagic.so.1.0.0
    `-- libmagic.so.1.0.0

3 directories, 7 files
上面只是生成了file和libmagic.so库,file需要读取/usr/share /file/magic.mgc类型文件,这个文件在pc上不能正常生成,
只能拷贝到arm开发板上去生成
luther@gliethttp:~/gliethttp$ cp -ar lib /vobs/nfs/
luther@gliethttp:~/gliethttp$ cp bin/file /vobs/nfs/
luther@gliethttp:~/file-4.26/magic$ cp -ar Magdir /vobs/nfs/
在arm开发板上
# cd /nfs
# ./file -C -m Magdir  生成类型库Magdir.mgc
# ls -l Magdir.mgc
-rw-r--r--    1 root     0         1660224 Aug 22  2009 Magdir.mgc


将Magdir.mgc重命名为magic.mgc,然后 拷贝到/usr/share/file/magic.mgc就可以使用file了
# cp Magdir.mgc /usr/share/file/magic.mgc
# ./file nls_cp936.ko
nls_cp936.ko: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), stripped

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值