У меня есть проект, который строится как файл DLL. Можно ли сгенерировать статический lib из объектных файлов, оставшихся от компиляции в виде DLL, используя команду lib.exe в качестве шага после сборки? Есть ли способ сказать lib.exe, чтобы создать статическую библиотеку, используя все объектные файлы, найденные в определенной области, без индивидуального уточнения объектных файлов?
Спасибо!
Visual Studio использует несколько разных определений препроцессора для DLL и LIB. Это может работать в некоторых случаях, но в общем случае это не очень хорошая идея.
Стандартный способ сделать это — создать статический проект библиотеки по своему вкусу.
Если вы действительно настаиваете, вы можете вызвать другой экземпляр devenv.exe для его создания. Это можно сделать с помощью шага после сборки.
Откройте оболочку VS через предоставленный пакетный файл и выполните.
devenv SOLUTION_NAME /Build /project PROJECT_NAME /projectconfig CONFIG_NAME
Пример:
devenv ConsoleApplication.sln /build /project ConsoleApplication /projectconfig Debug|Win32
Других решений пока нет …