[英]virtualenv pip mysqldb mac os X python
我嘗試了這個http://jazstudios.blogspot.com/2010/07/installing-mysql-python-mysqldb-in.html提示在virtualenv(名為dogme )中安裝mysql-python( mysqldb )。 (這篇文章指出了兩件重要的事情:
export ARCHFLAGS="-arch x86_64"
echo "mysql_config = /opt/local/bin/mysql_config5" >> ./dogme/build/MySQL-python/site.cfg
幫助編譯mysqldb)
但是,當之后,我運行python,導入MySQLdb,我得到這個:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/.virtualenvs/dogme/lib/python2.5/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/home/.virtualenvs/dogme/lib/python2.5/site-packages/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /home/.virtualenvs/dogme/lib/python2.5/site-packages/_mysql.so
Expected in: flat namespace
in /home/.virtualenvs/dogme/lib/python2.5/site-packages/_mysql.so
誰都明白什么是錯的?
我遇到了類似的問題,看看我的追溯:
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.6/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/Library/Python/2.6/site-packages/_mysql.so, 2): Library not loaded: libmysqlclient.16.dylib
Referenced from: /Library/Python/2.6/site-packages/_mysql.so
Reason: image not found
我做的是將這些變量放在我的.bash_profile
:
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib/:$DYLD_LIBRARY_PATH"
當我用Apache運行Python CGI應用程序時,我使用SetEnv指令設置了這個相同的變量:
<Directory "/path/to/app">
SetEnv DYLD_LIBRARY_PATH /usr/local/mysql/lib/:$DYLD_LIBRARY_PATH
...
</Directory>
現在一切正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.