阅读:2422回复:15
可能是个比较简单的问题,需要大家帮忙
第一次用tornado,就出了这么个问题,请大家帮忙
我在工程中加入了一些.c文件,然后在SIMNTgnu的C/C++ Compiler中include一些路径,但是build时出现: make: *** No rule to make target `config.h\', needed by `agentmain.o\'. Stop. 的错误,而且在“External Dependencies”文件夹下面的所有头文件双击后都无法找到,而且错误信息显示,编译器都在同一个目录下找这些头文件,而这个目录我并没有在C/C++ Compiler中加入,这是为什么? |
|
沙发#
发布于:2004-05-10 23:58
config.h文件是BSP的文件,一般的硬件相关的内容在其中定义
在下面情况中经常遇见这个情况: 包含了该文件,或者包含了引用该文件的文件,通常创建可引导工程时不会出问题,但创建可加载工程时会找不到该文件。这里列出两种解决的办法,其一是重新定义某些宏,这样的好处是不会和其他模块冲突,但要注意不要引起重复定义,导致引用其的模块编译出错。其二是直接在工程中包含config。h文件,这种方法适用于使用已知的BSP,缺点是用户在重定义config。h文件之后可能会产生冲突(我不太肯定),我一直使用第二种方法,目前没有看到什么问题(我在x86系统架构下编程,相应的还会包含pc。h和configall。h) |
|
|
板凳#
发布于:2004-05-11 09:36
多谢楼上的帮忙,
其实我用不到BSP,我只是要生成一个可以在VxWorks系统下运行的程序,config.h是我通过别的工具生成的文件, 我是创建的可加载工程,关键是有不少头文件,一个个的加是不是太麻烦了,呵呵,我去试试, |
|
地板#
发布于:2004-05-11 09:56
还是不行啊,我采用了第二种方法
出现了同样的错误,郁闷阿 |
|
地下室#
发布于:2004-05-11 22:07
原来是这样,你的这个不是BSP的config。h,最好还是改名。
出现这个提示会有几个可能, 最大的可能是,系统找不到所需要的头文件,看样子你的问题是这样的,确认头文件的存在,而且确认目录指向都是正确的,最好源程序和头文件在同一个目录下。 另外一个可能是头文件虽然存在但是系统不认,相应的原因应该是系统区分后缀名的大小写。把所有文件名、后缀名都改为小写即可。 还有就是编译顺序,问题不常见,表现形式也不太一样,你的问题不应该是这个 注意,不是MAKE文件的问题,我曾就这个问题学了好长时间Make才发现走错了路 |
|
|
5楼#
发布于:2004-05-12 09:42
多谢!!
我也觉得是找不到头文件, 编译时tornado会根据SIMNTgnu的C/C++ Compiler中所include的目录来找头文件吧? 可能是include时出错了,我是这样的:-I后面加目录, |
|
6楼#
发布于:2004-05-12 16:27
编译之前,把dependencies重新check一下。
在工程名字上点右键。第一个选项就是。 |
|
7楼#
发布于:2004-05-12 16:38
多谢楼上的
可是还是不行啊, 谁能帮我? |
|
8楼#
发布于:2004-05-12 23:56
现在还是在“External Dependencies”文件夹下面的所有头文件双击后都无法找到吗?如果是的话先让其找到再说,Tornado 工具可以找到的话,编译工具就可以找到了。
如果和系统文件重名,可能会导致出错 加上路径的办法应该是对的。 另外还有一招,对付疑难杂症绝对好用,首先make clean 一下,确保所有的文件都是重新编译,然后再make,不过这可能需要一点make的知识。或者简单点的就是把所用的.o文件全部删掉(不要删错哦) |
|
|
9楼#
发布于:2004-05-13 09:30
你建立的是bootable or download project?? 先检查config文件是否存在于bsp目录。 如果是download,可以把/bsp的config copy 到当前目录。 通常 bsp的头文件不会出现在external dependence里
这个问题最常见的原因就是 depence 或者文件不存在。。有时候稍微改动一下文件再多check几下就通过了。 |
|
10楼#
发布于:2004-05-13 17:03
我建的是downloadable的project,因为我只想生成一个可以运行于VxWorks的程序,也不需要下载到板子上,随便找个pc作为代理也可以,所以我没有安装BSP,以前没用过,不知道这样理解对不对,请指教,谢谢!!
config.h是我通过别的工具生成的文件,跟tornado应该没关系吧。 |
|
11楼#
发布于:2004-05-13 21:47
我的建议还是给config。h改名字,因为会冲突。
在创建工程的时候必然会选择BSP,即使可加载的工程也一样。 [编辑 - 5/13/04 by aquariuscamus] |
|
|
12楼#
发布于:2004-05-17 16:37
我把所有的头文件都拷到了SIMNTgnu目录下,那个问题解决了,可是又有了新的问题,都看不懂,我是第一次用vxworks,哪位高人指点一下,如何学啊,
|
|
13楼#
发布于:2004-05-17 22:40
还是先找本书看看,推荐Tornado用户手册和VxWorks程序员手册,英文原版,写得很好
|
|
|
14楼#
发布于:2004-05-19 09:18
请参考此文:为什么我在buidl的时候无法生成可download的目标文件?
|
|
|
15楼#
发布于:2004-05-21 10:44
多谢aquariuscamus、bjzld及版主,我的问题解决了,终于编译通过了,
但是在download时又出错了,出现好多Unresolved symbols,不知道如何解决? |
|