/Fo
(对象文件名)
指定对象 (.obj
) 文件的名称或要使用的目录,而不是默认目录。
语法
/Fo"pathname"
/Fo:[ ]"pathname"
备注
你可以使用 /Fo
编译器选项为 CL 编译器命令生成的所有目标文件设置输出目录。 也可以使用它来重命名单个目标文件。 不要在 /Fo
选项和 pathname
自变量之间放置空格。
默认情况下,编译器生成的目标文件放在当前目录下。 它们被赋予源文件的基本名称和 .obj
扩展名。
若要使用 /Fo
选项重命名对象文件,请将输出文件名指定为 pathname
自变量。 重命名对象文件时,可以使用所需的任何名称和扩展名,但建议的约定是使用 .obj
扩展名。 如果你在指定多个源文件进行编译时指定了文件名 /Fo
,则编译器会生成命令行错误 D8036。
若要使用 /Fo
选项为 CL 命令创建的所有目标文件设置输出目录,请将目录指定为 pathname
自变量。 目录由 pathname
自变量中的尾部斜杠或反斜杠指示。 如果使用带引号的路径,请使用转义反斜杠(双反斜杠)。 目录路径可以是绝对路径,也可以是相对于源目录的。 指定的目录必须存在,或者编译器报告错误 D8003。 不会自动创建目录。
示例
此命令行演示了允许 /Fo
选项和 pathname
参数之间的可选空间的格式。 它在当前目录中创建一个名为 test.obj
的对象文件。
CL /Fo: "test" /EHsc /c sample1.cpp
以下命令行在现有目录 D:\intermediate\
中创建名为 sample1.obj
和 sample2.obj
的对象文件。 它在带引号的路径中使用转义反斜杠字符作为路径段分隔符:
CL /Fo"D:\\intermediate\\" /EHsc /c sample1.cpp sample2.cpp
此命令行在与源目录相关的现有目录 output\
中创建名为 sample1.obj
和 sample2.obj
的对象文件。
CL /Fooutput\ /EHsc /c sample1.cpp sample2.cpp
在 Visual Studio 中或以编程方式设置选项
在 Visual Studio 开发环境中设置此编译器选项
打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
选择“配置属性”>“C/C++”>“输出文件”属性页 。
修改“对象文件名”属性以设置输出目录。 在 IDE 中,目标文件的扩展名必须为
.obj
。
以编程方式设置此编译器选项
- 请参阅 ObjectFile。