1

我正面临这个问题。因此,我需要使用“多线程 DLL”(/MD)和“多线程 DLL 调试”(/MDd)运行时选项构建支持库(zlib、libtiff、libpng、libxml2、libiconv)。但问题是没有直接的方法。我的意思是没有可以在 Visual C++ 中打开并构建它的 *.sln / *.vcproj 文件。

我知道GNU 构建系统

$./configure --with-all-sorts-of-required-switches
$./make
$./make install

在我的搜索过程中,我遇到了一个名为CMake的东西,它会生成 *.vcproj 和 *.sln 文件,但需要 CMakeLists.txt。并非所有项目都提供 CMakeLists.txt。

我从来没有从 Visual C++ 命令行编译过任何东西。

  • 通常大多数项目都提供makefile. 现在我如何生成 *.vcproj / *.sln ?

  • 我可以用mingw-makeMinGW编译吗?

  • 如果可以,如何设置不同的选项(“多线程”(/MT)、“多线程调试”(/MTd)、“多线程 DLL”(/MD)、“多线程 DLL 调试” (/MDd)) 用于运行时库?

  • 我不知道还有什么其他方法可用。请对此有所了解。

4

4 回答 4

2

您可以在 Visual Studio 中创建一个新项目并将现有的 .cpp 文件添加到其中。

请注意,对于您提到的几个 GNU 库,您可能很难将它们构建在 Microsoft Visual Studio 的编译器上,因为据我所知,它们并不羞于在此类程序中使用 GCC 扩展。

于 2010-04-28T16:16:34.377 回答
2

我相信所有这些项目都包含一个 .vcproj 文件(在 VC 中打开/构建)和/或 VC makefile(使用 nmake 构建)。

于 2010-04-28T16:20:42.393 回答
1

当您创建一个空的 Win32 项目并将所有文件拖入其中时,大多数项目都可以工作。

然后更改输出路径,并可能单击几个选项。

于 2010-04-28T16:18:23.060 回答
0

您可以为编译器+链接器创建包装脚本以调用 VC 编译器并让它们通过./configure CC=my-visual-c-script CXX=my-visual-c++-script. 我破解了与 automake 一起分发的编译脚本来做这件事。请注意,automake 也会调用编译器来链接,因此包装器必须决定它是否必须调用编译器或链接器。

于 2010-04-29T08:04:45.303 回答