使用 Boost.Test 时,通常不需要定义main()
函数,因为 Boost.Test 自己提供了一个。
我最近不得不将我的项目转换为使用 3rd 方库的静态链接(在 VS2010 上)。自然,我必须链接到多个.lib
s 以便构建成功,并且我的构建运行得很好。
然而,当我运行我的测试项目时,发生了一些非常奇怪的事情。似乎.lib
我的一个依赖库所需的第 3 方之一(libpng)包含一个测试文件,其中main()
定义了一个函数(pngtest.c
如果你必须知道的话)。
由于我的项目没有main()
功能,因此链接器选择了该功能作为我的“测试”应用程序。因此,我的测试都没有运行。
有谁知道我如何防止这种情况发生?如何告诉链接器/编译器使用 Boost.Test main()
?