Error: Couldn‘t perform atomic initializationSQLite. Compiled for 3.7.17, but running with 3.7.7(代码片
Posted 王万林 Ben
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Error: Couldn‘t perform atomic initializationSQLite. Compiled for 3.7.17, but running with 3.7.7(代码片相关的知识,希望对你有一定的参考价值。
系统升级后应用在调用svn命令时报错,提示Error: Couldn't perform atomic initializationSQLite. Compiled for 3.7.17, but running with 3.7.7.1
问题分析
这里是因为应用目录下的/tools.lnx86/lib/64bit/libsqlite3.so.0文件是为3.7.7.1编译的,而系统下的库是/usr/lib64/libsqlite3.so.0是为3.7.17编译的。svn是在该系统下编译安装的,被应用调用时,由于应用内部设置了其/tools.lnx86/lib/64bit目录到LD_LIBRARY_PATH变量,导致被调用svn时找到了不匹配的共享库,导致运行失败,并给出了如题的报错提示。
问题解决
方案1
svn重编,将需要找的共享库,都以rpath的方式查找。这样可以避免环境中不匹配的共享库被找到,提高程序的健壮性。
方案2
wrapper包装,启动后将svn运行环境的LD_LIBRARY_PATH置空后再调用svn。
方案3
env LD_LIBRARY_PATH="" svn up
以上是关于Error: Couldn‘t perform atomic initializationSQLite. Compiled for 3.7.17, but running with 3.7.7(代码片的主要内容,如果未能解决你的问题,请参考以下文章
Error: Couldn‘t perform atomic initializationSQLite. Compiled for 3.7.17, but running with 3.7.7(代码片
关于Apache报错 couldn't perform authentication. AuthType not set!
YUM安装提示PYCURL ERROR 6 - "Couldn't错误的解决办法
insh.exe:*** Couldn't reserve space for cygwin's heap,Win32 error 0
iOS模拟器URLWithString The operation couldn't be completed. (Cocoa error 256.)