为mysql、python和django修改DYLD_LIBRARY_PATH

9 投票
2 回答
11491 浏览
提问于 2025-04-16 12:18

我看到有很多帖子讨论这个问题,但我实在是个新手,不太确定怎么正确地修改所有东西。

我正在尝试完成安装,但当我在Python中输入“import MySQLdb”时,结果是:

ImportError: dlopen(/Users/pccampbell/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.5-fat3.egg-tmp/_mysql.so, 2):


Library not loaded: libmysqlclient.16.dylib

引用自:/Users/pccampbell/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.5-fat3.egg-tmp/_mysql.so

然后我运行了这个命令,大家都说这个有效(确实有效,但只是暂时的!):

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/

所以,我想执行以下操作来永久修改路径(在另一个帮助网站上找到的):

sudo install_name_tool -change libmysqlclient.16.dylib /usr/local/mysql/lib/libmysqlclient.16.dylib lib/python2.7/site-packages/_mysql.so

但是,我遇到了这个错误:

install_name_tool: can't open file: lib/python2.7/site-packages/_mysql.so (No such file or directory)

我找到了 _mysql.so 文件,但即使我使用这个路径也不行:

/Users/pccampbell/MySQL-python-1.2.3/build/lib.macosx-10.5-fat3-2.7

总之:有没有办法永久修改 DYLD_LIBRARY_PATH,这样我就不需要每次都运行 export 命令。如果可以的话,请提供具体的语法,因为我已经猜了很久了。 :(

任何帮助都非常感谢。

帕特里克

2 个回答

8

在 /etc/profile 文件中添加 export 命令,具体如下:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib

注意:上面提到的 lib 后面没有 "/"。如果你在 lib 后面加上了 /,然后尝试安装 MySQL-python,当你运行 ">>import MySQLdb" 时,就会一直出现错误。

希望这能帮你解决问题!:-)

14

根据Matt的想法,在mac os x Lion系统中,你应该在你的/etc/profile文件中添加以下这句话:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH

撰写回答