Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ visual studio从同一项目生成静态库和dll_C++_Visual Studio 2010_Object_Build Process - Fatal编程技术网

C++ visual studio从同一项目生成静态库和dll

C++ visual studio从同一项目生成静态库和dll,c++,visual-studio-2010,object,build-process,C++,Visual Studio 2010,Object,Build Process,我有一个正在作为DLL文件构建的项目。是否可以使用lib.exe命令作为后期生成步骤,从编译为dll的对象文件中生成静态库?有没有一种方法可以告诉lib.exe使用在特定区域中找到的所有对象文件创建静态库,而不单独指定对象文件 谢谢 VisualStudio对DLL和LIB使用了几种不同的预处理器定义。这在某些情况下可能有效,但在一般情况下,这不是一个好主意 做事情的标准方法是创建一个您喜欢的静态库项目 如果您确实坚持,可以调用devenv.exe的另一个实例来构建它。这可以通过后期构建步骤完成

我有一个正在作为DLL文件构建的项目。是否可以使用lib.exe命令作为后期生成步骤,从编译为dll的对象文件中生成静态库?有没有一种方法可以告诉lib.exe使用在特定区域中找到的所有对象文件创建静态库,而不单独指定对象文件


谢谢

VisualStudio对DLL和LIB使用了几种不同的预处理器定义。这在某些情况下可能有效,但在一般情况下,这不是一个好主意

做事情的标准方法是创建一个您喜欢的静态库项目

如果您确实坚持,可以调用devenv.exe的另一个实例来构建它。这可以通过后期构建步骤完成

通过提供的批处理文件打开VS外壳并执行

devenv SOLUTION_NAME /Build /project PROJECT_NAME  /projectconfig CONFIG_NAME
例如:

devenv ConsoleApplication.sln /build /project ConsoleApplication /projectconfig Debug|Win32

我想你可以试试。您是否根据LIB.EXE命令行帮助使用/LIST进行了尝试?编写一个批处理脚本来查找.obj文件,然后使用适当的参数调用lib.exe(如果它实际工作的话)应该足够简单吗?