amobbs.com 阿莫电子技术论坛

标题: 请教一个问题,我用STVD打开LED工程,编译出现错误,是什么问题,第一次接触ST系列单片机! [打印本页]

作者: smallsnail    时间: 2009-3-25 18:12
标题: 请教一个问题,我用STVD打开LED工程,编译出现错误,是什么问题,第一次接触ST系列单片机!
错误提示如下!
#error clnk Debug\led.lkf:26 can't open file crtsi0.sm8
#error clnk Debug\led.lkf:38 can't open file libis0.sm8
#error clnk Debug\led.lkf:39 can't open file libm0.sm8
The command: "clnk -m Debug\led.map -l"C:\Program Files\COSMIC\CXSTM8_16K\Lib"  -o Debug\led.sm8 Debug\led.lkf " has failed, the returned value is: 1
exit code=1.
作者: ifree64    时间: 2009-3-25 18:36
可能是在项目设置里要设置编译器的路径。

:(我可能是最后一个拿到板子的了。
作者: wenhuaxiao    时间: 2009-3-25 20:05
设置编译器的路径,我这只有一个MUSIC的有问题的
作者: Grant    时间: 2009-3-25 20:39
是工程没有设置编译器路径。

两种方法。
1、永久的方法:
打开STVD,菜单栏Tools-Options对话框,选择Toolset标签,Toolset选择“STM8S COSMIC”,Root path选择COSMIC路径。我用的是正版,名字会有些不同,默认是“CXSTM8_16K”路径。

(原文件名:1.jpg)

2、仅对当前工程有效:
打开项目,通过菜单Projec-Settings,进入设置界面。

(原文件名:2.jpg)
作者: smallsnail    时间: 2009-3-26 06:54
上面的问题昨天回去研究了一晚上终于解决。
除了编译MUISE外其余都正常。
编译muise出现了如下错误,是什么问题呢?

#error clnk Debug\music.lkf:1 symbol f__stext not defined (Debug\stm8_interrupt_vector.o )
The command: "clnk -l"D:\Program Files\COSMIC\CXSTM8_16K\Lib"  -o Debug\music.sm8 -mDebug\music.map Debug\music.lkf " has failed, the returned value is: 1
exit code=1.

作者: ifree64    时间: 2009-3-26 20:22
其他收到板子的兄弟遇到楼上的问题了吗?
minikit_samples默认解压后有编译好的可执行文件,所以不REBUILD ALL不会遇到上面的问题,但如果rebuild就会出现上面的问题。

看了半天,这个肯定是与start-up代码有关,但我比较了LED工程和MUSIC工程下的linker设置,发现完全一样还是无法解决问题。到底怎么回事?
作者: ifree64    时间: 2009-3-26 20:43
解决了,仔细看发现Linker设置里Std. Library与LED工程的不一样;但是又是灰色改不了。
后来在C Compiler选项里点了下Defaults后Linker里的设置就如下图所示了。这个时候就能正常编译了。


(原文件名:Linker_Setting.PNG)
作者: dvhome    时间: 2009-3-26 23:39
我的还没有开始呢

家里光驱坏了
作者: smallsnail    时间: 2009-3-27 07:47
【6楼】 ifree64  
果然是这个样子,谢谢!
作者: smallsnail    时间: 2009-3-27 07:50
另外有几个工程在编译的时候老是出现这个警告,是什么地方设置的不对呢?

(原文件名:QQ截图未命名.jpg)
作者: ifree64    时间: 2009-3-27 07:57
你是不是在集成开发环境以外编辑了工程中的文件?
作者: cctnt    时间: 2009-3-27 08:01
你在编辑界面打开了music.lkf,编译动作会产生新的music.lkf,警告是问是否重新打开新的music.lkf
作者: smallsnail    时间: 2009-3-27 08:07
【11楼】 cctnt  
问题已解决,果然如你所说,O(∩_∩)O~
作者: hl1200aa    时间: 2009-4-5 11:12
Compiling main.c...
cxstm8 +mods0 +debug -pxp -pp -l -iE:\tem\CXSTM8\Hstm8  -clDebug\ -coDebug\ main.c
#error cpstm8 stm8s207r.h:12(0) missing ;
main.c:
The command: "cxstm8 +mods0 +debug -pxp -pp -l -iE:\tem\CXSTM8\Hstm8  -clDebug\ -coDebug\ main.c" has failed, the returned value is: 1
exit code=1.

昨天LED例程搞定以后,今天再开就出现问题了,到底怎么回事?
作者: ddllxxrr    时间: 2009-7-22 13:41
奥呀,我也遇到相同问题我呆会试下哈,先谢了
作者: jerkoh    时间: 2010-1-29 21:15
MARK
作者: z_zt    时间: 2010-2-28 12:22
同样问题,现在解决,感谢楼上各位先行者,感谢OurDEV!
作者: czg94215    时间: 2010-5-27 21:50
mark
作者: wjjcyy    时间: 2011-8-29 17:02
我是在工程中  seting  的,,,就行了
作者: faith_2013    时间: 2014-3-19 11:00
Grant 发表于 2009-3-25 20:39
是工程没有设置编译器路径。

两种方法。

谢谢,同样的问题解决了。
作者: hqq5tr    时间: 2015-9-15 19:18
不错  解决问题了

作者: max0527@126.com    时间: 2016-5-9 22:55
可能是编程软件的文件,COMSIC编译器有问题,我遇见过,重装下破解版的软件就行了!
作者: linhao1581    时间: 2016-5-9 23:00
7年前的老帖也被挖出来了
作者: mcuhome    时间: 2017-1-8 16:35
MARK,正打算准备学习stm8




欢迎光临 amobbs.com 阿莫电子技术论坛 (https://www.amobbs.com/) Powered by Discuz! X3.4