4037|17

16

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

Micropython windows 编译出错 [复制链接]

 
 求大神指教:
micropython1.9.4 在Windows7下: $:mingw32-make.exe V=1时出错。
编译目录在micropython/ports/stm32
提示如下:
strip  mpy-cross
strip: 'mpy-cross': No such file
mingw32-make[1]: *** [../py/mkrules.mk:134: mpy-cross] Error 1
mingw32-make[1]: Leaving directory 'D:/micropython/mpy-cross'
mingw32-make: *** [../../py/mkrules.mk:108: ../../mpy-cross/mpy-cross] Error 2


在mpy-cross下有mpy-cross的可执行程序的,见图
前面用git submodule update --init 并未报错

mcrpy --error.jpg (314.38 KB, 下载次数: 0)

mcrpy --error.jpg

folder file.jpg (147.11 KB, 下载次数: 0)

folder file.jpg

最新回复

应该是工具链安装的不完整,需要仔细检查一下  详情 回复 发表于 2018-11-29 21:58
点赞 关注(2)
 
 

回复
举报

16

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
是没法执行
mingw32-make.exe -C mpy-cross V=1
然后就出现上面的错误
LINK mpy-cross
strip: 'mpy-cross': No such file
mingw32-make: *** [../py/mkrules.mk:134: mpy-cross] Error 1
mingw32-make: Leaving directory 'D:/micropython/mpy-cross'
 
 
 

回复

1万

帖子

25

TA的资源

版主

板凳
 
应该是工具链安装的不完整,需要仔细检查一下。推荐还是在linux下编译,可以用虚拟机,速度比windows下快很多。
 
 
 

回复

1367

帖子

6

TA的资源

版主

4
 

要不使能下这两个宏之一?看你是64位还是32位的
个人签名

1084534438 欢迎交流  [加油,一切皆有可能]

 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

5
 
终于下定决心安装虚拟的VMware 12 和 Ubuntu18, 结果在安装GCC-ARM-embedded时出错了,
Err:1 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 libisl15 amd64 0.18-4
  File has unexpected size (565848 != 547612). Mirror sync in progress? [IP: 101.44.1.118 80]
  Hashes of expected file:
   - SHA256:cd7342b24e5152aac9145e73e57e6991422edb34ff3740974795bb266fcc6fdb
   - SHA1:208ce135ea6f489e08c0a4890c034487c5744e50 [weak]
   - MD5Sum:d4650d223975a310e0f79b272dd96ccf [weak]
   - Filesize:547612 [weak]
E: Failed to fetch http://101.44.1.118/files/921200 ... 15_0.18-4_amd64.deb  File has unexpected size (565848 != 547612). Mirror sync in progress? [IP: 101.44.1.118 80]
   Hashes of expected file:
    - SHA256:cd7342b24e5152aac9145e73e57e6991422edb34ff3740974795bb266fcc6fdb
    - SHA1:208ce135ea6f489e08c0a4890c034487c5744e50 [weak]
    - MD5Sum:d4650d223975a310e0f79b272dd96ccf [weak]
    - Filesize:547612 [weak]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
不知道怎么整,文件大小不一致, update 也没用, 不知道怎么删除后重新下载
失眠中
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

6
 
回复一下RCSN:
1。 不知道您所说的那个文件是否在mpy-cross文件夹下的。
2.   如果是的话,我改了一下,分别改成1, 报下面的错误,不知道是进步了,还是退步了, 汗一个
gccollect.c: In function 'gc_collect':
gccollect.c:147:5: error: implicit declaration of function 'mp_unix_mark_exec' [-Werror=implicit-function-declaration]
     mp_unix_mark_exec();
     ^~~~~~~~~~~~~~~~~
cc1.exe: all warnings being treated as errors
mingw32-make: *** [../py/mkrules.mk:47: build/gccollect.o] Error 1
mingw32-make: Leaving directory 'D:/micropython/mpy-cross'
 
 
 

回复

1万

帖子

25

TA的资源

版主

7
 
请参考这个帖子安装工具链:

https://bbs.eeworld.com.cn/thread-645222-1-1.html
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

8
 
快崩溃了,按照版主给的链接,在目录micropython下还是死在了make -C mpy-cross上
安装了python3.6.4,依然报错

QQ截图20181127161608.png (8.55 KB, 下载次数: 0)

QQ截图20181127161608.png
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

9
 
在Windows下装了ubuntu 16.04.5, arm-gcc-embedded, git, gcc, make, clone micropython, submodule update 一路顺风,网络也给力。直到 make -C mpy-cross

 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

10
 
怀疑是python 命令不能被识别,python3 可以。
那下面就是怎么把它们联系起来了,
ubuntu下,我不会啊,
临门一脚了
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

11
 
用alias python='/usr/bin/python3' 链接上了pyhton3
执行make -C mpy-cross
依然报同样的错误

你以为这下可以搞定了,结果就是不让你如愿,这就是魅力
孩子定律也可以用在这里了。
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

12
 
通过两宿的努力,终于在一台电脑上安装完了。
VM 下Ubuntu16.04 下 可以通过,排除windows下的
18.04 下,直接安装gcc-arm-embeded 是不行的,得到的文件大小和期望的不一样,直接报错。
凌晨的网速比较快,能有几百K,前半夜就算了,早点洗洗睡吧。
一路下载,编译,得到了dfu 和hex文件,把hex文件烧录后,连USB,电脑能提示STM device DFU mode,看来基本成功,
现在的问题是:
    1. 在ubuntu terminal 下不能运行micropython,
    2. 出现STM device DFU mode后,接下来该怎么办?貌似还要烧其他程序,是firmware.dfu文件吗?还是其他什么文件?如何得到
一直以来,都是一种固定模式,在电脑上编译好所有指令,然后烧录到芯片,然后运行,或者在电脑上直接debug,看来MicroPython 会打破这种模式。
感谢版主的支持。

点评

DFU可以用dfutil下载,或者用ST的dfudemo下载(window)。 micropython主要就是用终端进行调试,解释语言的优缺点都很明显,但的确很方便。  详情 回复 发表于 2018-11-28 14:30
 
 
 

回复

1万

帖子

25

TA的资源

版主

13
 
red_wu1975 发表于 2018-11-28 09:35
通过两宿的努力,终于在一台电脑上安装完了。
VM 下Ubuntu16.04 下 可以通过,排除windows下的
18.04 下 ...

DFU可以用dfutil下载,或者用ST的dfudemo下载(window)。
micropython主要就是用终端进行调试,解释语言的优缺点都很明显,但的确很方便。
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

14
 
是不是可以这么理解,编译后产生的两个文件firmware.hex 和 firmware.dfu 格式不同,内容也不同?
hex文件是bootloader,而dfu文件是应用程序,
从零开始移植,难度确实很大, 不知道正确长的啥样子, 不过电脑能识别device,说明USB工作了。大方向是对滴
回家继续踹iiiii

点评

两个文件是完全相同的,只是格式不同。DFU可以通过USB用dfu util直接下载,而HEX可以通过其它编程器(如stlink)下载。 bootloader是STM32硬件固化的,不需要另外编写,除非你有特殊要求。  详情 回复 发表于 2018-11-29 09:58
 
 
 

回复

1万

帖子

25

TA的资源

版主

15
 
red_wu1975 发表于 2018-11-28 15:54
是不是可以这么理解,编译后产生的两个文件firmware.hex 和 firmware.dfu 格式不同,内容也不同?
hex文件 ...

两个文件是完全相同的,只是格式不同。DFU可以通过USB用dfu util直接下载,而HEX可以通过其它编程器(如stlink)下载。

bootloader是STM32硬件固化的,不需要另外编写,除非你有特殊要求。
 
 
 

回复

16

帖子

0

TA的资源

一粒金砂(中级)

16
 
昨天的工作如下:
1. hex文件烧录后,出现过dfu mode, 然后就没反应了
2. dfu文件在dfu mode下烧录后,没改善
3. 把dfu文件转换成hex文件,和原来的hex文件大小不一样。verify也不一样。
目前面临的问题是:
  1. 板子能进stm dfu mode, 但不稳定。
  2. 板子通过USB能被电脑识别到串口COM12, 但串口无法访问或者通讯。
  3. 虚拟盘啥的,通过电脑往里存文件啥的,还是镜中花,水中月

点评

如果USB磁盘不能访问和串口不能访问,应该是硬件问题,如时钟频率。 dfu转的HEX校验不同是正常的,因为它只包含了flash的一部分,而flash会划分一部分作为磁盘,这部分是不会修改的,如果你校验整个flash是会不同  详情 回复 发表于 2018-11-29 21:27
 
 
 

回复

1万

帖子

25

TA的资源

版主

17
 
red_wu1975 发表于 2018-11-29 12:10
昨天的工作如下:
1. hex文件烧录后,出现过dfu mode, 然后就没反应了
2. dfu文件在dfu mode下烧录后, ...

如果USB磁盘不能访问和串口不能访问,应该是硬件问题,如时钟频率。

dfu转的HEX校验不同是正常的,因为它只包含了flash的一部分,而flash会划分一部分作为磁盘,这部分是不会修改的,如果你校验整个flash是会不同的。

建议先从一个验证过的硬件开始,可以少走很多弯路。
 
 
 

回复

869

帖子

0

TA的资源

禁止发言

18
 
应该是工具链安装的不完整,需要仔细检查一下
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表