• readline-6.3 之arm平台交叉编译


            近期须要弄个CLI命令接口程序,初步设想是须要支持历史命令翻阅,tab键命令补全这种一个东西。经查阅相关文档,深耕百度一番!(google近期不太正常)

    实在恼火。发现readline果真是个好东西,于是将其先编译成arm平台。

    ./configure CC=arm-linux-gcc --host=arm-linux CROSS_COMPILE=arm-linux-gcc

    配置,起初发如今configure的时候,会自己主动编译一个test程序,而交叉编译出来的程序是无法载x86上执行的,所以Makefile自然没生成

    此时需改动configure,


    将6324行  if test "$cross_compiling" = no; then :中的yes改为no就可以

    mv xfree.o xfree.so
    rm -f compat.so
    arm-linux-gcc -c -DHAVE_CONFIG_H    -I. -I.. -I.. -DRL_LIBRARY_VERSION='"6.3"' -g -O -fPIC -o compat.o ../compat.c
    mv compat.o compat.so
    rm -f libreadline.so.6.3
    arm-linux-gcc -shared -Wl,-soname,libreadline.so.6.3 -L./lib/termcap -Wl,-rpath,/usr/local/lib -Wl,-soname,`basename libreadline.so.6.3 .3` -o libreadline.so.6.3 readline.so vi_mode.so funmap.so keymaps.so parens.so search.so rltty.so complete.so bind.so isearch.so display.so signals.so util.so kill.so undo.so macro.so input.so callback.so terminal.so text.so nls.so misc.so history.so histexpand.so histfile.so histsearch.so shell.so mbutil.so tilde.so colors.so parse-colors.so xmalloc.so xfree.so compat.so
    rm -f libhistory.so.6.3
    arm-linux-gcc -shared -Wl,-soname,libhistory.so.6.3 -L./lib/termcap -Wl,-rpath,/usr/local/lib -Wl,-soname,`basename libhistory.so.6.3 .3` -o libhistory.so.6.3 history.so histexpand.so histfile.so histsearch.so shell.so mbutil.so xmalloc.so xfree.so
    make[1]: Leaving directory `/home/test/readline-6.3/shlib'

    终于生成库



  • 相关阅读:
    559. N叉树的最大深度
    999. 车的可用捕获量
    1051. 高度检查器
    238. 除自身以外数组的乘积
    【Go】Go语言的%d,%p,%v等占位符的使用
    【Java】commons-lang3中DateUtils类方法介绍
    【Java】时间戳与Date相互转换
    【Linux】crontab定时任务用用法
    【Java】使用Lambda排序集合
    【PBFT】拜占庭容错
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/3938063.html
Copyright © 2020-2023  润新知