微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

交叉编译,Crosstool,Makefile,libreadline-重新启动

如何解决交叉编译,Crosstool,Makefile,libreadline-重新启动

我在Cross Compiling,Crosstool,Makefile,libreadline中遇到了类似的问题。我使用crosstool-ng using armv7-rpi2-linux-gnueabihf配置示例为RaspBerry Pi 2构建了一个交叉编译器。 我尝试使用交叉编译器来编译Simplicity Studio提供的C项目,并获得相同的readline.h问题。我进行了如下修改C项目Makefile的编译:

    ifdef INCLUDE_MAKEFILE
    include $(INCLUDE_MAKEFILE)
    endif  
    
    .SUFFIXES:
      
    #COMPILER ?= gcc
    #LINKER   ?= gcc
    COMPILER ?= /home/vitosan92/x-tools/armv7-rpi2-linux-gnueabihf/bin/armv7-rpi2-linux-gnueabihf-gcc
    LINKER   ?= /home/vitosan92/x-tools/armv7-rpi2-linux-gnueabihf/bin/armv7-rpi2-linux-gnueabihf-gcc
    ARCHIVE  ?= ar
    STD      ?= gnu99

然后我启动了make命令。 但是,使用命令armv7-rpi2-linux-gnueabihf-gcc --print-sysroot,我找到了应该放置readline标头的文件夹。 因此,我将标头从/usr/include复制到/home/vitosan92/x-tools/armv7-rpi2-linux-gnueabihf/armv7-rpi2-linux-gnueabihf/sysroot/usr/include/解决了标头问题。 但是,现在我有一个链接器问题:

/home/vitosan92/x-tools/armv7-rpi2-linux-gnueabihf/lib/gcc/armv7-rpi2-linux-gnueabihf/10.2.0/../../../../armv7-rpi2-linux-gnueabihf/bin/ld.bfd: cannot find -lreadline /home/vitosan92/x-tools/armv7-rpi2-linux-gnueabihf/lib/gcc/armv7-rpi2-linux-gnueabihf/10.2.0/../../../../armv7-rpi2-linux-gnueabihf/bin/ld.bfd: cannot find -lncurses collect2: error: ld returned 1 exit status make: *** [Makefile:424: build/exe/Z3GatewayHost] Error 1

如何使用交叉编译器生成链接文件?为什么当我构建工具链时,不包括readline标头来构建交叉编译器?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。