如何在cmake中指定.lib文件的路径?

123*_*789 3 cmake visual-studio

我正在尝试用它来构建一个项目cmake.在那个我提到的单独的文件夹.dll.lib.Dll是在我提到的文件夹中创建的,但.lib文件不是在我提到的文件夹中生成的.请为此问题提供解决方案.

我用的命令cmakelists.txt是:

set(CMAKE_LIBRARY_OUTPUT_DIRECTORY My_Lib)

SET_TARGET_PROPERTIES(MyApi PROPERTIES 
                                    LINKER_LANGUAGE CPP 
                                    RUNTIME_OUTPUT_DIRECTORY My_Binary
                                    LIBRARY_OUTPUT_DIRECTORY My_Lib)
Run Code Online (Sandbox Code Playgroud)

Com*_*sMS 5

引用CMake文档:

对于DLL平台,共享库的DLL部分被视为运行时目标,相应的导入库被视为存档目标.

因此,而不是设置LIBRARY_OUTPUT_DIRECTORYCMAKE_LIBRARY_OUTPUT_DIRECTORY您需要设置ARCHIVE_OUTPUT_DIRECTORYCMAKE_ARCHIVE_OUTPUT_DIRECTORY(两个足够之一).

  • 您对生成的中间文件的布局影响很小.但是,请参阅[这个问题](http://stackoverflow.com/questions/9218638/cmake-to-place-the-intermediate-files-to-a-certain-directory),了解为什么不应该打扰你. (2认同)