动态链接时出现undefined symbol错误
来源:互联网 发布:java 动态代理模式 编辑:程序博客网 时间:2024/06/06 04:35
有时候编译生成程序时,会出现undefined symbol:XXX 错误,比如编译python的sqlite模块时,出现这样的错误
可以使用nm命令,查看依赖的库是否含有这个XXX,以上面的编译python的sqlite模块为例,
python编译sqlite模块时依赖本地的sqlite,比如依赖/usr/local/lib/libsqlite3.so这个库,出现了undefined symbol:sqlite3_set_authorizer
就可以使用命令:nm /usr/local/lib |grep sqlite3_set_authorizer
如果没有任何输出,则表明在这个libsqlite3.so中不存在sqlite3_set_authorizer函数或者变量(编译libsqlite3.so时是否定义了SQLITE_OMIT_AUTHORIZATION)
在CMakeLists.txt文件中
add_definitions(-DSQLITE_AMALGAMATION)
#add_definitions(-DSQLITE_OMIT_AUTHORIZATION) #注释掉这一行
add_definitions(-DSQLITE_ENABLE_LOAD_EXTENSION)
还有可能就是sqlite库和python的版本不匹配,python中用到了当前的sqlite库没有的函数。
阅读全文
0 0
- 动态链接时出现undefined symbol错误
- Java jni 加载 so 时,出现 undefined symbol 错误
- C++ 使用动态链接库xx.so 时出现undefined reference错误
- 链接不过:undefined symbol
- CMake 包含了头文件 找到了so动态库 链接时仍然出现undefined reference to 错误
- 使用pycocotools时出现"undefined symbol: _Py_ZeroStruct"
- mysql动态加载存储引擎时出现errno: 2 undefined symbol: thd_alloc_service
- linux动态库so调用外部so,运行时出现undefined symbol
- undefined symbol 运行错误
- 错误'undefined symbol: __gxx_personality_v0'
- linux编译出现undefined reference to symbol 'pthread_create错误解决方案
- JNI开发-加载动态库错误之undefined symbol:
- 对于动态数据库链接出现undefined reference to `dlclose' 的错误
- linux下安装svn集成到APACHE上时,启动apache出现:undefined symbol: db_create的错误处理
- undefined symbol: node_module_register 错误原因
- 内嵌Python import时undefined symbol错误及解决
- Fatal error: Call to undefined function mysql_connect() in (php链接mysql时出现的错误)
- C++链接时出现”multiple definition of“错误,或者undefined reference的问题
- spring mvc文件上传
- wdcp后台访问安全设置即限制域名/IP访问设置及清除方法
- Cocos2d-场景切换-CCTransitionFlipX和CCTransitionFade和CCTransitionSlideInL
- 关于z-index层级问题
- JavaWeb之DBUtils(一)QueryRunner类对数据表的增、删、查(8种结果集处理方式)、改操作
- 动态链接时出现undefined symbol错误
- 经常出门的男人赶紧收藏起来,太实用了
- 记录一下
- VS2010程序打包操作(超详细的)
- log4j配置打印mybatis sql语句
- 文章标题
- 资料丨一套python学习视频,学完python基本可出师!
- winform运行后台运行cmd并实时输出运行信息
- K:线性表的实现—链表