0

我的问题是生成的 .c 文件将我的标题加载到 <> 而不是“”

生成的 .c 文件具有 <my_header.h> 而不是“my_header.h”。my_header.h 位于 vala 文件所在的目录中。

我尝试使用 --includedir=。但这并没有帮助。

这只发生在 valac-0.16.0 Valac 0.16.1 没有这个错误。

我必须使用 valac-0.16.0,所以切换编译器版本不是一个选项。

我用这个脚本解决了这个问题:

#!/usr/bin/ruby

files = Dir.glob("*.c")
files.each do |f| 
    file = File.open(f,"r")
    data = file.read()
    data = data.sub("<my_header.h>","\"my_header.h\"")
    file2 = File.open(f,"w+")
    file2.write(data);
end

但这在将其打包成 .deb 文件时可能会失败,所以我的问题仍然存在。

4

1 回答 1

1

你可以传递-X -I.给 Vala 编译器,它会-I.直接传递给 C 编译器。

于 2012-07-20T13:56:10.560 回答