<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[运维进行时]]></title> 
<link>https://blog.liuts.com/index.php</link> 
<description><![CDATA[互联网运维与架构]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[运维进行时]]></copyright>
<item>
<link>https://blog.liuts.com/post//</link>
<title><![CDATA[Linux下python安装 MySQLdb的问题]]></title> 
<author>root &lt;admin@yourname.com&gt;</author>
<category><![CDATA[Python]]></category>
<pubDate>Fri, 21 Sep 2007 16:02:30 +0000</pubDate> 
<guid>https://blog.liuts.com/post//</guid> 
<description>
<![CDATA[ 
	&nbsp;&nbsp;&nbsp;&nbsp;今天在一台机器上安装python的MySQLdb，遇到了以前碰到过的一个问题，想到当时这个问题可折腾了我挺久的。于是把问题及问题的解决写下来，希望对其他遇到这个问题的朋友有帮助。 问题： 安装的过程一些正常:python setup.py build && python setup.py install 但是安装完毕之后import MySQLdb的时候发生如下错误：<br/><div class="quote"><div class="quote-title">引用</div><div class="quote-content"><br/>Python 2.5.1 (r251:54863, Jul 16 2007, 10:57:41) [GCC 3.2.3 20030502 (Red Hat Linux 3.2.3-42)] on linux2 Type “help”, “copyright”, “credits” or “license” for more information. >>> import MySQLdb Traceback (most recent call last): File ““, line 1, in File “build/bdist.linux-i686/egg/MySQLdb/__init__.py”, line 19, in File “build/bdist.linux-i686/egg/_mysql.py”, line 7, in File “build/bdist.linux-i686/egg/_mysql.py”, line 6, in __bootstrap__ ImportError: /root/.python-eggs/MySQL_python-1.2.2-py2.5-linux-i686.egg-tmp/_mysql.so: undefined symbol: compress >>><br/></div></div><br/>出现问题的原因：在编译的时候没有加载zlib。 问题的解决： <br/>1、rm build -rdf ：删除build目录，使得运行setup.py build的时候会重新编译。<br/>2、运行python setup.py build,在最后一行会看到如下的信息：<br/>gcc -pthread -shared build/temp.linux-i686-2.5/_mysql.o -L/data2/mysql/lib -lmysqlclient_r -lpthread -lcrypt -lnsl -lm -lpthread -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv -o build/lib.linux-i686-2.5/_mysql.so<br/>把上述信息复制然后在编译语句的最后添加 -lz 重新编译_mysql.so 运行：gcc -pthread -shared build/temp.linux-i686-2.5/_mysql.o -L/data2/mysql/lib -lmysqlclient_r -lpthread -lcrypt -lnsl -lm -lpthread -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv -o build/lib.linux-i686-2.5/_mysql.so -lz<br/><br/>3、运行python setup.py install即可。<br/>这是再import MySQLdb的时候就不会报错啦。<br/>Python 2.5.1 (r251:54863, Jul 16 2007, 10:57:41) [GCC 3.2.3 20030502 (Red Hat Linux 3.2.3-42)] on linux2 Type “help”, “copyright”, “credits” or “license” for more information. >>> import MySQLdb >>><br/>Tags - <a href="https://blog.liuts.com/tags/python/" rel="tag">python</a> , <a href="https://blog.liuts.com/tags/mysqldb/" rel="tag">mysqldb</a>
]]>
</description>
</item><item>
<link>https://blog.liuts.com/post//#blogcomment</link>
<title><![CDATA[[评论] Linux下python安装 MySQLdb的问题]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://blog.liuts.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>