[Mac]svn: E200030: SQLite 编译为 3.43.2,但是运行于 3.39.5
一、问题
svn: E200029: Couldn’t perform atomic initialization
svn: E200030: SQLite 编译为 3.43.2,但是运行于 3.39.5
二、出现情形:
- 情形一:近期有安装过Homebrew,且进行过相关更新操作
- 情形二:安装前终端模式下可正常运行svn 命令行,安装后,运行svn命令行是提示以下报错:
- svn: E200029: Couldn’t perform atomic initialization
- svn: E200030: SQLite 编译为 3.43.2,但是运行于 3.39.5
三、造成原因:
- 这是一个与 SQLite 版本不匹配相关的问题。SVN 客户端用 SQLite 3.43.2 编译的,但系统上运行的 SQLite 版本是 3.39.5。这种版本不匹配会导致 SVN 无法正常工作。
四、解决方案:
-
终端模式下,命令行运行以下指令
-
brew update
-
brew reinstall sqlite svn --build-from-source
-
更新macOs系统至最新,更新后即可解决问题,重新运行svn命令行可以正常运行。
-
进行完上述步骤后就可以实现类似于还原到svn可以使用的情形
五、避坑:
在版本稳定的情况下,尽可能少进行些骚操作,这种Homebrew的问题发生后,不好定位,解决方案杂七杂八,一种一种方案试下来代价太大