一、软件环境:linux fedora 8

二、硬件环境:AT91RM9200

三、下载readline-5.2包:ftp://ftp.gnu.org/gnu/readline/readline-5.2.tar.gz

四、移植步骤如下:

1、安装readline-5.2

# tar zxf readline-5.2.tar.gz

# cd readline-5.2/

# ./configure --host=arm-linux --prefix=$(pwd)/_install

# make

# make install

这样编译OK以后,在/readline-5.2/shlib下生成2个动态链接库:libhistory.so.5.2和libreadline.so.5.2

2、我们把这两个库,复制到交叉编译库/usr/local/arm/3.4.1/arm-linux/lib/中

# cp shlib/libhistory.so.5.2 /usr/local/arm/3.4.1/arm-linux/lib/

# cp shlib/libreadline.so.5.2 /usr/local/arm/3.4.1/arm-linux/lib/

3、然后再做两个软链接:

# cd /usr/local/arm/3.4.1/arm-linux/lib/

# ln -s libreadline.so.5.2 libreadline.so

# ln -s libhistory.so.5.2 libhistory.so

4、在把readline的头文件放进交叉编译的头文件库里

cp -a /usr/include/readline/ /usr/local/arm/3.4.1/arm-linux/include/

然后再编译fileman.c

# arm-linux-gcc -o fileman fileman.c -lreadline -lhistory –lncurses

然后编译通不过:

提示:

fileman.c: In function `com_pwd':

fileman.c:444: warning: assignment makes pointer from integer without a cast

/work/usr/local/arm/3.4.1/bin/../lib/gcc/arm-linux/3.4.1/../../../../arm-linux/bin/ld: cannot find -lncurses

collect2: ld returned 1 exit status

这个说明没有安装ncurses库

5、ncurses-5.5.tar.gz库的安装

下载ncuises库:http://download.chinaunix.net/download.php?id=14653&ResourceID=7242

安装库:

# tar zxf ncurses-5.5.tar.gz

# cd ncurses

# ./configure --host=arm-linux --prefix=$(pwd)/_install

# make

# make install

然后把/ncurses-5.5/lib目录下生成的 libncurses复制到/usr/local/arm/3.4.1/arm-linux/lib中

# cp lib/libncurses.a /usr/local/arm/3.4.1/arm-linux/lib

好,这样就完成了ncurses库的编辑!

6、交叉编辑fileman.c文件

#  cd readline-5.2/examples

#  arm-linux-gcc -o fileman fileman.c -lreadline -lhistory –lncurses

这样交叉编译就通过了,生成fileman;同样也可以用gcc编译

#  gcc -o fileman1 fileman.c -lreadline -lhistory –lncurses

生成fileman1

7、然后将fileman靠到ARM板上,同时将readline交叉编译好的的库:libreadline.so.5.2和libhistory.so.5.2复制到ARM板的/lib目录下,再在ARM上设置2个库德软链接:

# ln –s libreadline.so.5.2 libreadline.5

# ln –s libreadline.so.5.2 libreadline.5

然后再./fileman就可以运行fileman了!!!

Readline-5.2交叉编译——fileman移植相关推荐

  1. Libusb交叉编译和移植

    2019独角兽企业重金招聘Python工程师标准>>> Libusb交叉编译和移植 某项目内核需要支持USB的相关操作,所以考虑移植Libusb库 1.到官网下载最新的libusb源 ...

  2. x264的交叉编译和移植

    要能够在开发板上使用x264库就需要将x264交叉编译并且移植到开发板上,当然为了方便调试,可是在主机在也安装上x264.开发板上安装的库需要交叉编辑,生成可执行文件之后,目标程序在开发板上运行时需要 ...

  3. opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译

    opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译 原文我是用有道笔记记录的,下面排版不是很好,可参看有道笔记原文:h ...

  4. openssh源码交叉编译,移植

    安装移植openssh需要先make zlib和ssl. 安装包: zlib-1.2.12.tar.gz openssl-1.0.1e.tar.gz openssh-5.3p1.tar.gz 交叉编译 ...

  5. QT笔记--嵌入式QT交叉编译与移植(含OpenGL ES2)

    介绍 本文记录了QT交叉编译并移植到开发板的过程,并在虚拟机上用QTcreater 开发程序,到开发板上运行.其中重点解决了一些过程中的BUG和坑. 准备工作 1.一个ubuntu系统的电脑(或虚拟机 ...

  6. linux编译linphone,Ubuntu下linphone交叉编译与移植

    移植前搞清楚linphone依赖库的关系,这个一般是移植工作的关键所在,还有一个关键是目标平台的交叉编译器. linphone-3.1.0依赖的库如下: speex(又依赖libogg) libosi ...

  7. mysql 客户端 交叉编译_移植mysql到嵌入式ARM平台

    移植MySQL到嵌入式ARM平台 MySQL没有专门针对ARM的版本,移植到ARM没有官方文档可参考,因此,暂时参考这样一篇文档: http://blog.chinaunix.net/space.ph ...

  8. 交叉编译并移植opencv3.0.0到arm板

    原文:http://blog.csdn.net/gatieme/article/details/49080355 项目需求,交叉编译OpenCV,并移植到arm中. 在opencv2.0以上的版本编译 ...

  9. 海思芯片怎么使用tde给qt加速_基于Hisi芯片,交叉编译、移植Qt4.8.6(可旋转)

    一.安装海思编译链 安装海思编译链(如arm-hisiv300-linux-*),不做赘述. 二.下载Qt4.8.6源码包 源码包:qt-everywhere-opensource-src-4.8.6 ...

  10. MINIGUI图形界面开发入门,交叉编译,移植

    1引言 自 MiniGUI 从 1998 年底推出以来,越来越多的人开始选择 MiniGUI 在 Linux 上开发实时嵌入式系统.MiniGUI 系统也逐渐成熟,应用到各种嵌入式系统中,包括PDA. ...

最新文章

  1. TVM将深度学习模型编译为WebGL
  2. 反射setaccessible_反射技术
  3. pandas使用pad函数向dataframe特定数据列的每个字符串添加后置(后缀)补齐字符或者字符串、向所有字符串的右侧填充、直到宽度达到指定要求(right padding)
  4. 《Sibelius 脚本程序设计》连载(四十七) - 4.17 BracketsAndBraces 与 Bracket
  5. vue-router 去掉#
  6. request.getContextPath()的功能
  7. SpringCloud与dubbo的区别
  8. junit - no runnable methods
  9. redis源码阅读--hashTable
  10. java kotlin相互调用_Kotlin的互操作——Kotlin与Java互相调用
  11. pycharm 显示空格及tab
  12. java中文件下载的思路(参考:孤傲苍狼)
  13. 每日一题_JavaScript.两种方式实现网页加载后onload绑定多个函数?
  14. MATLAB与Hspice联合仿真
  15. deepin任务栏消失解决方法
  16. 谷歌浏览器好用的复制粘贴插件_chrome浏览器好用的插件
  17. 激光条纹中心线提取算法总结和复现
  18. Dynamic Knowledge Graph Completionwith Jointly Structural and Textual Dependency
  19. 微信支付证书如何部署在linux,微信支付平台证书更新指引
  20. 基于Autoware制作高精地图(二)

热门文章

  1. 【滤波跟踪】基于多源信息融合算法实现多旋翼无人机组合导航系统含Matlab源码
  2. SPSS分析技术:神经网络算法;源于人的思维结构的数据分析算法
  3. Application.DoEvents()
  4. Bandicam(班迪录屏)破解注册机
  5. android 界面置顶,Android实现界面滚动时顶部部分内容置顶(附源码)
  6. 高职计算机专业英语说课ppt,专业英语说课.ppt
  7. 信息系统分析与设计 第三章 信息系统建设概论
  8. oracle通过日期函数求年龄的大小
  9. 在线教育技术方案,究竟哪种好?
  10. 分布式机器学习原理及实战(Pyspark)