error LNK2019: 无法解析的外部符号 _acosh,该符号在函数 _acoshFunc 中被引用

编译sqlite3 win32版本时候,遇到如下问题

2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _acosh,该符号在函数 _acoshFunc 中被引用
2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _asinh,该符号在函数 _asinhFunc 中被引用
2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _atanh,该符号在函数 _atanhFunc 中被引用
2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _isblank,该符号在函数 _properFunc 中被引用

搜索, 发现是在win32平台没有这几个,只要将 HAVE_AVOSH, HAVE_ASINH, HAVE_ATANH, HAVE_ISBLANK 注释掉就可以了

吐槽下,后面用的是

#ifndef HAVE_ACOSH

#endif

上面定义的是 #define HANVE_ACOSH   1

让人会以为是这边可以设置不同的值作为开关,当然对其他平台不熟悉,不知道这种写法是否其他平台要求i的

原文地址:https://www.cnblogs.com/shadow21/p/3970652.html