编译时出错:core.obj:错误LNK2001:未解析的外部符号_harmony_core_init

时间:2014-09-03 21:04:33

标签: c++ external unresolved-external lnk2001

错误

core.obj : error LNK2001: unresolved external symbol _harmony_core_init
core.obj : error LNK2001: unresolved external symbol _harmony_core_final

core.c - 函数的一段代码

harmony_core_init(); 

do_init(argc,argv); // Inicializa as funções do servidor  
.
.
do_sockets(next); 
} 
} 

harmony_core_final();

harmony.h - 带代码的文件

#include "../common/harmserv.h" 

void harmony_core_init(); 
void harmony_core_final(); 

harmony.c - 带代码的文件

#include "../common/harmony.h" 

void harmony_core_final() { 
db_destroy(mod_exports); 
db_destroy(harm_timer); 
harm_funcs->final(); 
} 

void harmony_core_init() {
int *module_version;
void (*module_init)();
}

欣赏帮助。

1 个答案:

答案 0 :(得分:0)

由于您未发布更多相关信息,因此未解析的外部信息表示以下一项或多项:

  1. 您无法编译缺失的函数。

  2. 您未能将包含该功能实施的源模块添加到您的项目中。

  3. 您无法添加包含包含这些函数的目标代码的静态库。

  4. 您无法将导入库添加到包含这些函数存根的项目中

  5. 当模块真的是C模块时,你将模块编译为C ++模块,而其他外部模块则需要'C'函数,而不是C ++函数(名称修改问题)。

    < / LI>
  6. 包含目标代码的目标代码文件或静态库已损坏。

  7. 我认为这是最大的,如果不是全部的原因。

    那么你会说出上述哪一个?