2010-04-15 52 views
0

首先,我應該說我是完全陌生的主塔,試圖從PHP/MySQL背景後學習Python的Web開發。我已經看到類似的問題,但我的是一個反向版本。導入錯誤與主塔/ SQLAlchemy和MySQL

我一直在關注的主塔書(pylonsbook.com)設置我的應用程序並得到以下錯誤:

導入錯誤:libmysqlclient_r.so.15:無法打開共享對象文件:沒有這樣的文件或目錄

我見過的其他問題與用戶使用舊版本的libmysqlclient_r.so.15有關,而我似乎安裝了v16。

任何意見,我可以/應該做什麼將不勝感激。整個輸出在下面。

(env)[email protected]:/var/www/python/SimpleSite$ paster setup-app development.ini 
Running setup_config() from simplesite.websetup 
Traceback (most recent call last): 
File "/var/www/python/env/bin/paster", line 8, in <module> 
    load_entry_point('PasteScript==1.7.3', 'console_scripts', 'paster')() 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/command.py", line 84, in run 
    invoke(command, command_name, options, args[1:]) 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/command.py", line 123, in invoke 
    exit_code = runner.run(args) 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/appinstall.py", line 68, in run 
    return super(AbstractInstallCommand, self).run(new_args) 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/command.py", line 218, in run 
    result = self.command() 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/appinstall.py", line 456, in command 
    self, config_file, section, self.sysconfig_install_vars(installer)) 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/appinstall.py", line 598, in setup_config 
    mod.setup_app, command, filename, section, vars) 
File "/var/www/python/env/lib/python2.6/site-packages/PasteScript-1.7.3-py2.6.egg/paste/script/appinstall.py", line 612, in _call_setup_app 
    func(command, conf, vars) 
File "/var/www/python/SimpleSite/simplesite/websetup.py", line 16, in setup_app 
    load_environment(conf.global_conf, conf.local_conf) 
File "/var/www/python/SimpleSite/simplesite/config/environment.py", line 48, in load_environment 
    engine = engine_from_config(config, 'sqlalchemy.') 
File "/var/www/python/env/lib/python2.6/site-packages/SQLAlchemy-0.5.8-py2.6.egg/sqlalchemy/engine/__init__.py", line 241, in engine_from_config 
    return create_engine(url, **opts) 
File "/var/www/python/env/lib/python2.6/site-packages/SQLAlchemy-0.5.8-py2.6.egg/sqlalchemy/engine/__init__.py", line 223, in create_engine 
    return strategy.create(*args, **kwargs) 
File "/var/www/python/env/lib/python2.6/site-packages/SQLAlchemy-0.5.8-py2.6.egg/sqlalchemy/engine/strategies.py", line 62, in create 
    dbapi = dialect_cls.dbapi(**dbapi_args) 
File "/var/www/python/env/lib/python2.6/site-packages/SQLAlchemy-0.5.8-py2.6.egg/sqlalchemy/databases/mysql.py", line 1456, in dbapi 
    import MySQLdb as mysql 
File "/var/www/python/env/lib/python2.6/site-packages/MySQL_python-1.2.3c1-py2.6-linux-i686.egg/MySQLdb/__init__.py", line 19, in <module> 
    File "/var/www/python/env/lib/python2.6/site-packages/MySQL_python-1.2.3c1-py2.6-linux-i686.egg/_mysql.py", line 7, in <module> 
File "/var/www/python/env/lib/python2.6/site-packages/MySQL_python-1.2.3c1-py2.6-linux-i686.egg/_mysql.py", line 6, in __bootstrap__ 
ImportError: libmysqlclient_r.so.15: cannot open shared object file: No such file or directory 

回答

2

要麼安裝庫的.so.15版本,要麼根據.so.16查找或構建MySQLdb。

+0

感謝您的迴應。任何想法我如何做第二個選擇? – eclipse31 2010-04-16 08:04:25

+0

安裝MySQL開發包,然後獲取並重建MySQLdb源代碼。 – 2010-04-16 08:46:32

+0

FWIW,這些是MySQL 5.1庫。 – jathanism 2010-04-17 18:06:48

0

我有同樣的錯誤,雖然我正在使用Django。我使用的是Ubuntu Lucid(10.04),爲我工作的解決方案是刪除(或重命名)MySQL_python-1.2.3c1-py2.6-linux-i686.egg目錄並安裝python-mysqldb,還沒有。

原因似乎是MySQL_Python的二進制egg直接鏈接到libmysqlclient_15.so,並且該庫已被Lucid中的libmysqlclient_16.so替換。

我發現這個解決方案在:http://github.com/rafpaf/OpenHatch

+1

謝謝karpoke。你把MySQL_python-1.2.3c1-py2.6-linux-i686.egg重命名爲什麼?它有什麼關係或只是重命名它,並安裝pyhton-mysql做伎倆? – eclipse31 2010-08-17 20:20:21

+0

重命名而不是刪除可以讓你輕鬆撤銷,如果你搞砸了一些東西。一旦你重新命名了(不管你選擇的名字多麼多,追加一個隨機後綴應該可以正常工作),並且檢查了這個解決方案對你來說是否正常工作,如果你願意,你可以刪除那個目錄。 – karpoke 2010-09-23 00:26:23