2017-03-10 289 views
1

Here是在Visual Studio中设置Google测试的绝佳指南。不幸的是,它忽略了是否应该总是为win32构建gtest,或者在与被测试项目相同的平台上构建gtest(第2段的第3步)。那么,如果我的“主”项目将为x64(native C++)构建,我应该如何构建gtest?有关系吗?构建gtest的MSVC:32位或64位?

回答

0

建立gtest与相同的编译器相同的编译器设置是非常重要的。

这意味着你的情况:使用相同的msvc编译器,例如Visual Studio 14 2015 win64。
另外,运行时库必须是相同的(我过去犯过一个错误)。您可以在Visual Studio中设置运行时库:

Configuration Properties - C/C++ - Code Generation 

如果您构建静态库,请将其设置为MTd。

0

这取决于你打算测试的库的构建。如果你构建你的库x64,那么你需要一个x64版本的gtest。否则,你需要32位gtest。

+0

我确认一切都适用于gtest和我的库的x64版本。谢谢!然而,我毫不犹豫地接受了答案,因为我没有检查它是否适用于我的库的gtest和x64构建的32位版本。如果是这样,那么回答“总是建立gtest为32bit”会更合适。如果你告诉你已经检查过了,建立gtest for 32bit不起作用,那么我会接受。 –

+0

http://stackoverflow.com/questions/1943681/linking-32-bit-library-to-64-bit-program – HughB