关于 VMware 中 Ubuntu 建立交叉编译环境(一般全)

    安装的时候,在网上搜了许多,遇到了好多问题,耗时耗力,所以决定总结归纳一下。

主要是为了避坑吧,将自己遇到的问题及解决办法全部整理下来。

先简单看一下设置共享文件夹

  1. 在Windows主机 中建立一个文件夹,用来当作共享文件夹。
  2. 打开VMware➡目标虚拟机,右击设置➡编辑虚拟机设置➡选项➡共享文件夹➡打开总是启用,添加➡确定(如图)

  3. 如果桌面上没有mnt文件夹,左侧文件➡其他位置➡计算机➡mnt➡hgfs➡共享文件夹(如图)

    注:左侧没有文件,左下角,显示应用程序。

接下来,开始建立交互编译环境。

网上下载 arm-linux-gcc编译器,

详见

https://blog.csdn.net/zz56z56/article/details/83021583

其实,这位大佬写的已经可以了,我的方法和他的有些差异,简略一些

(我这篇文章也主要是解决一些,我跟着大佬做的时候遇到的坑)

   1、下载好编译器后保存在共享文件夹中(也可以直接拖到虚拟机中,后续就不用在共享文件夹中打开终端,直接打开就行)

   2、打开虚拟机➡在共享文件夹页面打开终端,将编译器安装至/opt/FriendlyARM/toolschain/4.4.3/目录

         输入命令: sudo tar -zxvf arm-linux-gcc-4.4.3.tar.gz -C /

         输入注意:1、C大写,前后都有空格    2、红字改为自己压缩包名称

   3、修改系统配置文件:

            命令:sudo gedit /etc/profile   

            可用 mousepad 代替 gedit 

   4、在打开的编辑器窗口中,最下面添加 ,

      

      保存退出 (注:这里出现的warning可不用理会)

   5、刷新环境变量 (此后步骤与上述网站同)

            命令:source /etc/profile

   6、检查环境变量添加是否正确 

            命令: echo $PATH 

            如果可以显示/usr/local/arm/4.4.3/bin,那么环境变量添加成功

   7、输入arm-linux-gcc -v

      出现错误:

       /usr/local/arm/arm-linux-gcc-4.4.3/bin/arm-linux-gcc: 15: exec: /usr/local/arm/arm-linux-gcc-4.4.3/bin/.arm-   none-linux-gnueabi-gcc: not found

     解决上面问题的方法:因为你使用的是64位系统,但是编译工具是32位,需要安装32位支持库。

      命令:sudo apt-get install lib32ncurses5 lib32z1     (红字部分可以更改,具体为自己安装的软件)

     安装完,再次测试

     命令:arm-linux-gcc -v,

     完工!附一张成功后的图

开始避坑:

 1、第四步中,如果文本无法编辑保存,回终端进入管理员模式

     命令:sudo su 

    (退出管理员模式  命令:su 你的名字)

 2、最后一步安装32位支持库时出现: 有未能满足的依赖关系

     原因是:在ubuntu中我们使用sudo apt-get install 或者dpkg -i *.deb安装软件时,常常提示“有未能满足的依赖关系“,这是因为当前软件源中依赖库的版本不满足软件的要求。

          解决办法:

              1:换源(换源方法在下边)

              2:sudo apt-get install lib32ncurses5 lib32z1。 这里会提示“有未能满足的依赖关系“;

             3:sudo apt-get -f install。    这个命令会针对当前不满足的依赖关系,下载正确版本的依赖库;

             4:sudo apt-get install lib32ncurses5 lib32z1。 这一步就会正确安装软件了。

3、在最后一句测试时,可能出现

    最玄学,一度让我怀疑人生,通过查找才发现原因:

 

   解决方法附上:(注:第二行地址填自己的)

     

换源:1、备份自带源

             命令: sudo cp /etc/apt/sources.list /etc/apt/sources.list.back

          2、打开源文件,将原内容删除,粘贴新复制的源:

             命令: sudo gedit /etc/apt/sources.list

         3、更新 

             命令:sudo apt-get update

 下面是阿里源的地址:

 阿里源 :
  地址: https://opsx.alibaba.com/mirror
 源:

   deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
   deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

   deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
   deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

   deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
   deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

   deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
   deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

   deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
   deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

下面是文章中出现的一下材料的出处:
————————————————
“整体步骤”引用                    CSDN博主「只写不看小叶子」

原文链接:https://blog.csdn.net/zz56z56/article/details/83021583

“有未能满足的依赖关系”引用        CSDN博主「diligent_321」 

原文链接:https://blog.csdn.net/diligent_321/article/details/52748333 

“换源以及阿里源”出处引用          CSDN博主「yq_nixing」

原文链接:https://blog.csdn.net/m0_37601622/article/details/82968780

发布了9 篇原创文章 · 获赞 6 · 访问量 8260

猜你喜欢

转载自blog.csdn.net/qq_41934929/article/details/104448041
今日推荐