遇到动不动就有*.o文件找不到的情况,而且通常都是开始的时候可以正常LINK,而经过若干次重新LINK后却找不到(即使只是在代码中加一个无关紧要得空格),新建个工程,将目前的.C和.H文件原封不动加进去,再LINK就没有出现这种情况,所以估计可能ADS本身LINK的问题不知道你所说的是不是也是这样的问题。2. AXD出现.ses找不到错误:工程目录不可以是中文,修改为英文,重新编译,若还不行,AXD-options-configure target-双击ARMUL-OK-OK,file-load image-找到相应.axf文件。即可。此法每次重复。根治:通过比较c:\documents and settings\****\default-1-2-0-0.ses调试前后的变化,发现问题就出在这里,该文件是一个初始配置文件,调试目标文件之后,该文件就带上了调试目标文件的路径等多余信息,所以,AXD无法识别,自然就出现了'c:\documents and
settings\****\default-1-2-0-0.ses' could not be loaded的提示。我们只要在配置完成之后,把该文件的属性该为 只读,那么就不会在调试的过程中被修改了,以后也就不会出错了。注意文件的引导路径(找准Startup.s的路径),default-1-2-0-0.ses反复删几次细心比较下就明白了。
3. ADS1.2在LINK时找不到Os_cpu_a.o:复制工程到硬盘后,必须去除工程所有文件夹及文件的只读属性.如果项目移动到另外一个文件夹后,在重新编译之前,要选择菜单project --> remove object code ... ,在弹出的对话框中按"ALL Tagerts"来删除原来编译生成的*.o文件,才能编译成功.
ADS1.2编译时,出现找不到一个不存在目录下的目标文件(*.o)
编译一个COPY到硬盘上的一个工程,出现以下的fatal error message: Error: (Fatal)L6002: Could not open file f:\工作备份
\20061204\hc_DTMF3\DVS-ATM_data\RelInFLASH\ObjectCode\Startuo.o.
“f:\工作备份”这个目录我根本没有,“hc_DTMF3\DVS-ATM_data”这个目录是源代码的目录,但是我是解压到桌面上的,为什么为出现什么“f:\工作备份”呢,还通不过编译?
分析原因:以前在其他计算机上编译时造成的。 解决措施:复制ADS工程到硬盘后,必须去除工程所有文件夹及文件的只读属性.如果项目移动到另外一个文件夹后,在重新编译之前,要选择菜单project --> remove object code ... ,在弹出的对话框中按"ALL Tagerts"来删除原来编译生成的*.o文件,才能编译成功.
1 Patttern *(RW) only matches removed unused sections.
出现这个这个警告的情况我遇到过两种,一种是定义的全局变量在引用时拼写发生了错误,改过来就解决了。另外一种情况没有知道程序发生了什么错误,这个时候可以在
Edit/DebugIn××× Settings..., ARM linker Options下的Remove unused section下的几个段中取消remove就可以了,当前这个警告是说RW,所以把Read Write的勾去掉就可以,其他两种情况同理了。:) 2 有时候会出现打不开某个文件的情况
Project/Remove Object Code ,如果还不行,退出,工程不要放在中文目录下,换一个目录,再Project/Remove Object Code ,问题就OK了。 3 程序执行时发生取数据终止
在uCos_II环境下,运行zlg的gui,发生取数据终止,后来发现是gui任务的堆栈太小,原来64,改为1024,问题解决
4:刚学习使用ADS软件,在CODE WARRIOR FOR ARM使用的过程中,发现有些*.MCP文件无法通过双击打开。原来是该软件对中文路径不太支持,但是我们还是可以通过拖拽,和通过CODE WARRIOR FOR ARM的菜单 FILE--OPEN--这两种方式打开。 5. 果你在WIN7 X64下安装ADS就会有,
Warning : L6301W:Could not find file C:\Program Files . Error : L6218 : Undefined symbol .......
好像库都找不到了。 问题就出在Program Files (x86)那个括号上。ADS是1997年的产品,对本地化支持不好。 这种情况只会出现在WIN7 X64的系统下,x32下没有Program Files (x86)的目录,不会
有这样的问题。
所以ADS的所有访问的路径,不能有文中或特殊符号。
解决方法:你把ADS安装在C根目录下就可以。比如:C:\ARM\ADSv1_2。 还有运行ADS时需要以管理员身份启动