ubuntu18.04安装keil5并迁移stm32项目(踩坑)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

切记看完再享用,别直接上手,不然安装的时候会和我一样踩坑的(走了很多弯路,建议直接看wine的总结)。

学习了ubuntu的一些指令之后,准备用ubuntu来写单片机,所以需要安装keil5(版本较新),起初我以为会像其他软件一样下载个安装包然后解压啥的安装,后面百度的思路都是使用wine,wine是啥呢?

官方说法Wine(Wine Is Not an Emulator的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,macOS 及 BSD 等)上运行 Windows 应用的兼容层。Wine 不是像虚拟机或者模拟器一样模仿内部的 Windows 逻辑,而是將 Windows API 调用翻译成为动态的 POSIX 调用,免除了性能和其他一些行为的内存占用,让你能够干净地集合 Windows 应用到你的桌面。
大致意思应该就是在liunx系统下可以运行windows的exe吧
具体的思路如下:在虚拟机中安装wine,再安装keil5.exe,有机会再把CubeMX也安装上。


提示:以下是本篇文章正文内容,下面案例可供参考

一、安装wine

教程是说 先准备好mdk.exe和和谐文件。
然后就是如下的命令,因为他装的wine版本比较低。我试着改一下版本

# 添加i386架构
sudo dpkg --add-architecture i386
# 安装64位wine
sudo apt install wine64
# 添加wineHQ签名密钥
wget -qO- https://dl.winehq.org/wine-builds/Release.key | sudo apt-key add -
# 添加存储库
sudo apt-add-repository 'deb http://dl.winehq.org/wine-builds/ubuntu/ artful main'

期间出现了一些问题,比如使用nano编辑器的保存问题,我以为是Alt+它的提示指令,实际上是Ctrl才行。
安装64位的时候就给我报错Unable to locate package
然后我就去换源,换成aliyun的,然后就突然让我更新了,我人都傻了,秉承这来都来了的理念,我还是走了下去。然后等着等着就宕机了,只能强制重启,跳过这一步(很庆幸,重启后好像是更新成功了)。

在这里插入图片描述
更新好了就可以安装了,我百度过很多wine安装方法和版本,有点蒙。所以就随便试了一个,因为有的还是winehq啥的,这些介绍都在http://baike.baidu.com/link?url=8tjgR-t30E9pQ-h4MoY_55bl__W8hDLNIkYPZd9M8g7wYFtIjl-S3S4ligGBa_mj

keyi
到现在,所有命令运行完了,我去百度下如何验证是否安装成功
在这里插入图片描述
(⊙o⊙)…
反正就是出现问题了,查不到wine版本,然后就参考了下面的博客:
https://blog.csdn.net/u011139163/article/details/96336994
前面的步骤差不多,少了一步wine64,因为我也不知道wine64具体作用,所以干脆省略这一步(根据字面意思猜应该是wine兼容windows64位的意思吧),毕竟wine的版本是x.x.x的个位数,如下安装的是3.0.4。
在这里插入图片描述
在这里插入图片描述
经过漫长的等待,然后我还是和wine -version这条命令死磕,按道理安装成功后应该可以打印版本号的
在这里插入图片描述
然后就莫名其妙又开始非命令行式的自动安装了。
安装完毕用winetricks配置下wine(不知道咋配置,但是安装了)
在这里插入图片描述

wine的总结

走了很多弯路,这应该是最简单的一套了,反正我用这些命令之后出现了各种bug。

# 如果您使用的是 64 位系统,请开启 32 bit 架构支持(如果您之前没有开启的话):
sudo dpkg --add-architecture i386 

# 下载添加仓库密钥:
wget -nc https://dl.winehq.org/wine-builds/winehq.key
sudo apt-key add winehq.key

# 并添加仓库: 
sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'

# 更新安装包: 
sudo apt-get update

# 安装稳定分支:
sudo apt-get install --install-recommends winehq-stable

# 验证安装情况:
wine --version

在这里插入图片描述

二、安装Keil5

先用本地共享,将windows里面的exe分享到liunx的文件夹下。
ubuntu本地共享打开(选择要共享的文件夹右击->Local Network Share,然后将该勾选的勾选就行,再去命令行用ifconfig查ip,在windows中的网络,在地址栏输入\ip )
在这里插入图片描述

在这里插入图片描述
打开share文件夹后,将需要的文件拖进去,这边就能实时共享到。

在这里插入图片描述
然后跟着windows下的教程该怎么安装,该怎么下一步下去就好了。
其中遇到的问题,比如双击安装mdk5时发现安装不了,原来是文件夹中文,换个名字就可以了
在这里插入图片描述
然后根据教程破解并安装F1和F4的pack
至于STLink,我走了弯路,我先百度到一个stlink_develop.zip然后解压啥的,一通命令行操作安装成功,后面发现检测不到,然后参考了:
stlink驱动安装
不过比较遗憾的是不能直接在keil5中使用download,只能生成一个bin文件,然后用命令运行。

在User选项卡修改的命令有点长有点乱,我的项目叫demo,这是我的路径和命令

C:\users\along\Desktop\softwareInstall\program file\keil5\ARM\ARMCC\bin\fromelf.exe  --bin --output ./output/demo.bin ./output/demo.axf
分别是【axf转bin的文件路径】 【两个执行命令】 【输出文件路径】【输入文件路径】

在这里插入图片描述
重新编译成功生成bin文件
st-flash write demo.bin 0x8000000
明明已经插上接口并且连接到虚拟机了,出现bug(原因应该是设备松动了,我多试了几次命令就可以烧入了)

2023-08-21T21:35:58 WARN usb.c: Couldn't find any ST-Link devices

在找不到的情况下会出现这种
在这里插入图片描述

然后就莫名其妙可以了,我是跳到了bin所在的文件夹里再用的
在这里插入图片描述

完成,烧写成功,程序能正常运行,成功将stm32项目迁移


总结

就第一次嘛,很多东西都不太懂,比如ubuntu16.04版本兼容的问题导致更新了很久(就当时并不知道换个源要更新,然后等了很久),wine安装以及修改一些参数,遇到一些bug都比较棘手,花了半天时间搞定了,下次如果需要配置,也能有一定的经验了。

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装opencv的过程可能会遇到一些问题,下面是一些在Ubuntu 18.04上安装opencv时可能会遇到的常见问题及解决方法的指南。 1. 缺少依赖项:在安装opencv之前,确保已经安装了必需的依赖项。这包括cmake、build-essential、libgtk2.0-dev、pkg-config和python3-dev等。可以使用以下命令安装它们: ``` sudo apt-get install cmake build-essential libgtk2.0-dev pkg-config python3-dev ``` 2. 版本冲突:如果你的系统中已经安装了ROS-melodic,并且ROS-melodic中已经自带了opencv-3.2.0版本,你可能需要手动编译和安装opencv-3.2.0来覆盖ROS-melodic中的版本。首先下载opencv-3.2.0和opencv_contrib-3.2.0的源代码,并切换到opencv-3.2.0/build目录。然后使用make和make install命令进行编译和安装: ``` cd ~/Downloads/opencv_install/opencv-3.2.0/build/ make sudo make install ``` 3. 其他问题:在安装过程中可能会遇到其他问题,例如编译错误或链接错误。这些问题通常可以通过在安装过程中查找错误消息并搜索解决方案来解决。可以查看相关的安装教程、论坛或社区提供的文档以获取更多帮助。 总结起来,安装opencv的过程可能会因为缺少依赖项或版本冲突而出现问题。确保安装了必需的依赖项,并根据需要手动编译和安装适当的版本来解决版本冲突。在遇到其他问题时,可以查找相关的资源以获取更多帮助和解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Ubuntu18.04安装opencv 3.2.0的解决方法](https://download.csdn.net/download/weixin_38637983/12842575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [在ubuntu18.04安装opencv_contrib-3.2.0采教程](https://blog.csdn.net/hiram_zhang/article/details/103467737)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值