我正在尝试将一些C程序从Windows Server迁移到Linux。为了编辑代码,我使用Eclipse-Indigo。我正在工作的机器上有WinXP (这不是我的选择,所以请不要评论)。我的eclipse工作区位于一个samba共享驱动器上,该驱动器位于Linux服务器上我的home目录中。
每个C程序都在一个单独的makefile项目中。我已经在新的CDT项目设置中指定了cygwin gcc编译器/解析器,并在makefile项目设置中选择了所有相关的错误解析器。
没有显示语法错误,列出的错误看起来有些奇怪。第一个错误声明:
make: *** No rule to make target `../../../../../fiscus/vo/src/mk/e12_.mk'. Stop.末尾的make脚本是错误的。名称中有一个来自环境变量的值。路径完全正确,但脚本名称中包含变量$(WA_PLATFORM)。尽管我已经在build环境变量中指定了值,但仍未解决此问题。
随后的错误甚至更奇怪。对于后续的每个项目,我都会收到这样的消息:
Program "make" is not found in PATH这让我想知道第一条消息是如何生成的。此外,我的winXP环境中的路径(我假设它就是这里的相关路径)确实包含包含make程序的目录。
我哪里搞砸了?有什么提示吗?
最后一条信息。当我关闭eclipse时,我收到以下访问冲突错误:
<workarea-path>\.metadata\plugins\org.eclipse.debug.ui\launchConfigurationHistory.xml
<workarea-path>\.metadata\plugins\org.eclipse.jdt.core\variablesAndContainers.dat我觉得这很可疑。
发布于 2014-01-03 21:14:25
问题似乎在于我使用samba共享作为我的工作区。显然,在服务器上进行的常规备份改变了一些东西(但不知道具体是什么)。这些项目不再被识别为makefile项目,并且某些基本的元数据文件无法访问。权限当然不是问题,因为我检查了服务器上的权限(所有内容都设置为rwxrwxrwx)。
为了解决这个问题,我将整个工作区复制到我的本地硬盘上。然后我将eclipse指向这个新的工作区。下一步有点痛苦,因为我必须删除每个项目(当然不删除源代码),然后导入“现有代码作为Makefile项目”。这可以通过“文件->导入...”来完成。或者在包资源管理器中单击鼠标右键,然后选择“导入...”。
最后一个要求是指定所需的"include“目录。这可以通过“项目->属性-> C/C++常规->路径和符号”来完成。选择"Includes“选项卡,选择语言(在本例中为"GNU C"),并添加定义头部的目录。
现在它又能正常工作了。
https://stackoverflow.com/questions/20900203
复制相似问题