windows子系统WSL配置交叉编译环境过程记录

说明

现在win10系统内嵌了一个linux子系统,就想试试是否可以配置成自己平常用的开发环境,之前也试过,但失败了,这一次配置成功了,便记录一下配置过程。
使用的系统是ubuntu18.04LTS,要配置的编译器是arm-linux-gcc。

启用WSL

关于如何启用win10自带的子系统就不多说了,这个问一下度娘很容易就能知道,只要在“启用或关闭windows功能”中选中wsl,重启电脑后便可支持子系统。
启用之后我们可以在windows商店中选择自己喜欢的linux系统,我平时用的是ubuntu,所以选择了ubuntu18.04LTS,下载安装后,在win10左下角的搜索框输入ubuntu就会出现选项,确定后便可以进入ubutu系统了。

配置过程

我的目的是配置自己的工作环境,所以程序代码都是平时用的,这个就不分享了,大家可以自己找或者写个helloc world测试用。我只要能够成功编译自己的代码就算成功了。
进入系统后,先编译一下代码,看看缺少哪些支持。首先自然是make命令,这个好解决,直接

sudo apt install make

另外我还需要dos2unix,同样的方法也能解决。
最重要的就是编译器了,其实编译器的配置说起来是很简单的,无非就是把编译器拷贝过来,然后配置一下PATH路径,但对于我这种没那么数量的菜鸟来说还是费了很多功夫的。

交叉编译器

我之前的编译器是arm-linux-gcc4.8.4,是新唐NUC9700芯片配的编译环境,但是我电脑上没有,所以在网上找这个版本找了好久都没找到,后来才找到新唐的资源,直接运行安装脚本然后等待安装完成就可以了。
以上这些虽然很费时间,但其实都还好解决,最蛋疼的是配置后之后还是不能用,编译的时候会报错:arm-linux-gcc: Syntax error: “(” unexpected。之前配置的时候就是卡在这里,一直没能解决,所以弃用了,这次依然遇到了这个问题。抱着试一试的态度又开始了网上查找解决方案的漫漫长路。
此处略去诸多心酸历程。
最后的解决办法:原因是wsl是64位系统,而编译器是32位的,这种情况下需要安装32位的运行库。
其实之前就意识到这个问题了,但根据网上所有的解决办法,安装了好多库,始终没有解决,没想到这次竟然解决了,方法是
博文
操作之后可以验证一下,arm-linux-gcc -v查看一下版本,如果可以说明正常了。

结语

期间其实还有很多问题,比如安装sqlite3之后提示找不到库,是因为还要安装sqlite3-dev,等等,但其实这些安装软件的还好,网上有很多解决办法可以查到,关键的就是32位和64位这个问题,折腾了好久。
声明:如果让我再配一遍说不定还是要折腾很久,因为我不确定我这出的这几个点是否就是这样解决的,因为中间还安装过许多其他乱七八糟的东西,说不定是某一个生效了呢,所以以上仅供参考,无法解决您的问题也希望轻喷。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值