我正在尝试使用make文件在命令行编译的应用程序中使用资源文件(* .rc)。我发现即使当前目录是输出目录,并且cl似乎正在将其目标文件构建到此输出目录,rc编译器也只会将其输出.res文件放在与.rc文件相同的位置。如何灵活地告诉rc将其输出文件放在不同的位置,而无需手动“移动”操作?
即:
这会将source.obj文件放在(当前)c:\foo\bar\
目录中:
c:\foo\bar>cl c:\foo\src\source.cpp
这会将.res文件放在c:\foo\res\
目录中:
c:\foo\bar>rc c:\foo\res\resource.rc
主要问题是找到一种方法让make文件脚本执行res文件的后编译移动是很尴尬的。有没有办法更改输出文件夹?
答案 0 :(得分:0)
可能是您问题的答案: MSDN specs for RC
答案 1 :(得分:0)
这是我用于资源编译器的NMAKE行:
$(RC) -fo$@ $**
它将资源文件放在我指向的位置。
然而,似乎该目录必须事先存在,否则RC会沮丧地举起双手。也许我误解了这个问题,但我是对的,这是非常蹩脚的行为。在这种情况下,根据执行顺序,您可能需要在makefile中使用MKDIR命令。