错误LNK2001:CMake以及目录C和C ++的未解析外部符号

时间:2018-06-26 22:18:14

标签: visual-studio cmake

我是CMake的新手,也是混合源代码的新手,在尝试使用CMake和Visual Studio 14.0进行编译时,我收到以下错误消息

(Link target) -> main.obj : error LNK2001: unresolved external symbol ethash_get_cachesize main.obj : error LNK2001: unresolved external symbol ethash_get_datasize

我的项目的布局如下:

我在internal.c目录ethminer / libethash /中定义了ethash_get_cachesizeethash_get_datasize,这些都是C源代码。我确信随此源提供的CMake文件是可以正常使用的,因为该项目以前没有问题就已经进行了编译,在添加以下内容后,它仅给我LINK问题:

我还有另一个目录/ ethminer / dag /,带有C ++源代码“ dag.cpp”和“ dag.h”,它们都是C ++文件。和CMake文件。

set(SOURCES
    DAG.h DAG.cpp
)

include_directories(BEFORE ..)

link_directories(BEFORE ..)

C ++源文件“ dag.cpp”包含#include <libethash/internal.h>

但是我担心我缺少告诉CMake或Visual Studio从包含“ internal.c”的目录中查找所需文件的东西

任何帮助将不胜感激

0 个答案:

没有答案