##调用snaphu开源代码时,出现无法解析的外部符号错误:
错误 3 error LNK2019: 无法解析的外部符号 “int __cdecl snaphuUnwrap(int,char const * *)” (?snaphuUnwrap@@YAHHPEAPEBD@Z),该符号在函数 “private: bool __cdecl PhaseUnwrapping::RunPhaseUnwrapping(struct stPhaseUnwrapInfo &)” (?RunPhaseUnwrapping@PhaseUnwrapping@@AEAA_NAEAUstPhaseUnwrapInfo@@@Z) 中被引用 E:\PIE4.1\PIE_CPLUS\src\Plugin\Radar\Radar_InSAR\PhaseUnwrapping\PhaseUnwrapping.obj
错误原因分析:
1、有函数声明而没有函数实现。
2、外部依赖库的版本不一致。
3、忘记添加附件依赖库项。
还有一种情况,也是本次遇到的情况:
vs中混合使用c++代码和c代码时候,如果c++代码调用c的实现时候,也会出现这个情况。原因为两个函数的调用方式不一样,指函数明调用方式即可。