WSL编译buildroot相关问题解决

本文介绍了在WSL环境中编译Buildroot时遇到的路径错误及解决方案,并提供了启动时找不到console设备的具体解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 1、WSL编译buildroot报错如下:
    在这里插入图片描述

    • 1.1.错误提示
      Your PATH contains spaces, TABs, and/or newline (\n) characters.
    • 1.2.错误原因
      由于WSL的PATH引入了windows的路径导致的
    • 1.3.解决办法
      可使用以下命令进行编译
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin make 
    
  • 2、解决Buildroot 启动报错:can't open /dev/console: No such file or directory

    参考自:解决Buildroot 启动找不到console

    # 1.挂载文件系统到本地文件夹
    cd output\images
    mkdir test
    sudo mount rootfs.ext2 ./test/
    
    # 2.在主机上创建这个设备,另外把串口设备也创建好(这里的主设备号和次设备号需要和驱动程序中对应,一般情况下不用修改)
    cd test/dev/
    sudo mknod console c 5 1 
    sudo mknod ttyAMA0 c 204 64
    
    # 3.取消挂载
    cd ../../
    sudo umount ./test/
    
  • 3、buildroot编译libffi-3.4.4时,报错:config.log: No such file or directory
    错误提示:

    .././configure: line 2257: config.log: No such file or directory
    .././configure: line 2267: config.log: No such file or directory
    cat: standard output: No such file or directory
    make: *** [package/pkg-generic.mk:273: /mnt/e/wsl/buildroot/buildroot-2024.02.4/output/build/host-libffi-3.4.4/.stamp_configured] Error 1
    
    • 3.1.在github有类似问题的讨论
      config.log: No such file or directory

    • 3.2.原因
      可能和windows10 的wsl2有关系 ,也可能libffi configure书写有关系(只是假设的不完善,不代表本质的缺陷)

    • 3.3.解决方式
      修改output/build/host-libffi-3.4.4/m4/ax_enable_builddir.m4:

    # 打开libffi 中的文件:
    vim output/build/host-libffi-3.4.4/m4/ax_enable_builddir.m4
    
    # 找到119行的位置
    test -f $srcdir/config.log   && mv $srcdir/config.log   .
    
    # 将 mv 改为 cp
    test -f $srcdir/config.log   && cp $srcdir/config.log   .
    
  • 4、其他

### 编译Linux应用程序于WSL #### 准备工作 为了确保可以在Windows Subsystem for Linux(WSL)环境中顺利编译Linux应用程序,需先确认已经正确安装并设置了WSL以及所选的Linux发行版。通常推荐使用Ubuntu作为首选项[^1]。 #### 更新软件包列表与安装构建工具 在开始之前,应当更新系统的软件包索引,并安装必要的开发工具链。这一步骤能够保证后续编译过程中的依赖关系得到满足: ```bash sudo apt update && sudo apt upgrade -y ``` 上述命令不仅会刷新本地存储库的信息,还会下载最新的安全补丁和其他改进;`build-essential`则包含了GCC编译器套件以及其他一些常用的构建工具[^2]。 #### 获取源码 接下来就是获取想要编译的应用程序源代码。如果该应用托管在一个版本控制系统如Git之上,则可通过如下方式克隆仓库到本地目录中: ```bash git clone https://github.com/example/project.git cd project ``` 这里假设目标项目的地址为`https://github.com/example/project.git`,实际操作时应替换为目标项目的具体URL[^3]。 #### 配置与编译 进入项目根目录之后,大多数开源项目都会附带有一个名为`configure`的脚本或者是`Makefile`文件用于指导编译流程。对于前者来说,一般做法是运行: ```bash ./configure make ``` 而对于那些直接提供了`Makefile`的情况,则只需执行`make`即可触发整个编译链条。某些情况下可能还需要指定额外参数给`configure`脚本来调整最终产物的行为特性或是优化选项等。 #### 测试与安装 完成编译后,建议先通过内置测试集验证新生成二进制文件的功能完整性。很多大型项目都带有专门为此设计的目标,在这种情形下可以尝试运行`make check`或类似的指令来进行自我检验。一旦确信无误便能正式将其安置至系统路径之下供日后调用了——通常是借助`sudo make install`来达成此目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值