使用塔/SQLAlchemy和MySQL的ImportError

2024-04-28 22:25:32 发布

您现在位置:Python中文网/ 问答频道 /正文

首先,我应该说,我对Pylons完全陌生,从PHP/MySQL的背景学习Python的web开发。我也见过类似的问题,但我的问题有点相反。在

我一直在看塔门的书(pylonsbook.com网站)要设置我的应用程序并获得以下错误:

ImportError:libmysqlclient_r.so.15:无法打开共享对象文件:没有此类文件或目录

我看到的其他问题与用户是否安装了旧版本的libmysqlclient_r.so.15有关,而我似乎安装了v16。在

如有任何关于我能/应该做什么的建议,我们将不胜感激。整个输出如下。在

(env)eclipse@eclipse31:/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

Tags: inpyenvconfigeggvarlibpackages
2条回答

我也犯了同样的错误,尽管我和Django一起工作。我使用的是ubuntulucid(10.04),一个对我有效的解决方案是删除(或重命名)MySQL_python-1.2.3c1-py2.6-linux-i686.egg目录并安装python mysqldb(如果您还没有的话)。在

原因似乎是MySQL_Python binary egg直接链接到libmysqlclient_15.so,而这个库已经被Lucid中的libmysqlclient_16.so所取代。在

我在:http://github.com/rafpaf/OpenHatch

安装.so.15版本的库,或者根据.so.16查找或构建MySQLdb。在

相关问题 更多 >