在编译工程时出现:
/librestapi.a(rest_harbor.o):在函数‘rest_harbor_get_sysinfo’中: /rest_harbor.c:145:对‘harbor_get_sysinfo’未定义的引用 collect2: error: ld returned 1 exit status
但是我包含了实现的头文件。从报错来看,是rest_harbor.o这个库中没有正确链接harbor.o,所以应该检查Makrfile。结果在工程最外层的Lib.build中看到没有加入harbor.o库。加进去之后就编译通过了。
fatal error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突
fatal error LNK1112: module machine type ‘x64’ conflicts with target machine type ‘X86’
环境:win7 64 vs2013 qt5.3.2_64_opengl
问题产生原因:64位编译器与32位编译目标冲突。
解决途径:
1.vs2013中,生成->配置管理器
2.项目->属性->连接器->高级->目标计算机
函数实现 要放到调用者的前面