为什么我的cmake生成的项目不会找到它创建的库?

时间:2012-01-18 18:20:09

标签: visual-studio cmake

我正在尝试使用他们的tutorial来学习cmake。在步骤2中,它通过创建库来指导用户。 Visual Studio似乎无法找到在此过程中创建的MathFunctions.lib。它确实存在,但在调试文件夹中。是否有一般方法可以确保找到库而无需添加语句,如:

include_directories("${PROJECT_SOURCE_DIR}/MathFunctions/Debug")
include_directories("${PROJECT_SOURCE_DIR}/MathFunctions/Release")

这似乎是一个愚蠢的解决方案,与跨平台意图不一致。

1 个答案:

答案 0 :(得分:0)

教程的作者稍稍回过头来。他们没有显示MathFunctions.hmysqrt.cxx的来源。在UNIX上不需要它,但在Windows上,您必须明确标记从库导出/导入的所有函数。请参阅http://msdn.microsoft.com/en-us/library/3y1sfaz2.aspx(遗憾的是,我没有指向的好教程)。

如果您没有导出/导入符号,那么尽管正确生成了cmake项目,但链接器将无法解析您的函数并且构建将失败。