错误:自动生成文件 - NUL 字符/缺少分隔符

问题描述 投票:0回答:3

操作系统:Mac OS X 10.7(Lion)

程序(IDE):Eclipse CDT


我目前正在使用eclipse开发环境学习高级C++。 (我有我的理由。) 我现在已经工作了几个小时的手头问题是在构建程序期间发生的错误。 基本上,当我请求构建时,会自动为我的项目生成一个 makefile;问题是 makefile 本身似乎收到错误并出现在控制台中,如下所示:

**** Build of configuration Release for project TEST ****

make all 
makefile:1: warning: NUL character seen; rest of line ignored
makefile:1: *** missing separator.  Stop.

**** Build Finished ****

我已经寻找了列出的两个问题的解决方案,但这些问题都不是真正存在的。 奇怪的是,第一行只是一行“#”注释。更奇怪的是,IDE(或错误解析器)似乎对错误的实际位置感到困惑,因为当执行某些操作时错误符号会移动。 真正令我困惑的是,这个makefile是自动生成的,我没有对makefile相关的设置进行任何更改(默认情况下,使用GNU makefile,但我尝试了Posix makefile,但没有成功。)我什至完全重新安装了eclipse 。 值得注意的是,在这个特定的项目中,我包含了 OpenGL 和 GLUT 库用于测试目的;但是,我也尝试构建一个半空项目并收到了相同的结果。

如果需要任何进一步的信息,请留言。我没有包含 makefile,因为尝试编辑它会导致另一个构建后被覆盖。

c++ eclipse makefile separator nul
3个回答
5
投票

问题与文件编码有关。通过编辑器(如 NP++)检查文件编码类型,更改为 UTF-8 w/o BOM。

特别检查 *.mk 文件,而不仅仅是源文件。


2
投票

好吧,稍微解决了这个问题。基本上,我的文件不在源文件夹中。 这是非常荒谬的,它无法在源文件夹之外构建,或者给出适当的错误/警告。


0
投票

FWIW: 我刚刚遇到了同样的错误消息。 原来这个奇特的 Makefile 想要编译所有 *.cpp 源文件 我剪切并粘贴了其中一个“文件(2).cpp” 花哨的 Makefile 不够花哨,无法解析它自己的替换输出。 所以所有 -include 和所有 % 替换都可能导致这种情况。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.