我对创建 dll 文件很陌生,我想使用预编译头,这样我可以更快地构建。我目前使用的是 Visual Studio 2022。
这是我的目录结构
Foo
|-- include
| |-- pch.h
| |-- globalPch.h
|
|-- src
| |-- pch.cpp
| |-- globalPch.cpp
| |-- dllmain.cpp
| |-- FooDir
| | |-- A.cpp
| | |-- A.hpp
| | |-- B.cpp
| | |-- B.hpp
所以,我有 globalPch.h,它有所有标准库和一些用户类型定义,我有我的 pch.h 来包含所有 globalPch.h。所以,我已经设置了
pch.cpp
到 create (/Yc)
预编译头文件。然后,globalPch.cpp到Use(/Yu)
,我发现其实我把pch.h的相对路径放到了pch.cpp里面
但是我在 pch.cpp 文件上收到一个错误消息说
command-line option was not found in the source file
。我右击pch.cpp --> Precompiled Headers
--> Precompiled Header File
--> 设置pch.h的路径。我仍然遇到与上述相同的错误。
有解决办法吗?或者如果有人像我一样有预编译头问题,我会查看一些 OpenSource 代码。但看起来他们已经将 pch.h 和 pch.cpp 放入同一个目录中。这是传统的吗?