這次服務(wù)系統(tǒng)采用的是最新的Debian 7.0,但是有幾個(gè)細(xì)節(jié)的忽略導(dǎo)致我折騰了一番,我再這里再做個(gè)記錄吧
之前配置Linux服務(wù)器時(shí)采用的是Debian系統(tǒng)一直很穩(wěn)定,這次準(zhǔn)備遷移到新的服務(wù)器環(huán)境上,好在以前的配置我在博客都做了備忘,所以很容易就搞定了,這次服務(wù)系統(tǒng)采用的是最新的Debian 7.0,但是有幾個(gè)細(xì)節(jié)的忽略導(dǎo)致我折騰了一番,我再這里再做個(gè)記錄吧:
首先要安裝編譯環(huán)境,雖然我們通過apt-get可以方便的繞過手動(dòng)編譯的環(huán)節(jié),但是一些程序包可能內(nèi)置編譯命令,可以編譯一些擴(kuò)展程序,如果不安裝編譯環(huán)境,這些擴(kuò)展程序?qū)⑹?。通常通過下面的命令直接安裝開發(fā)編譯套件:
復(fù)制代碼
代碼如下:
apt-get install build-essential
由于部分app是用Python開發(fā)的,而其所依賴的包包含可以提高性能的擴(kuò)展,但是在編譯時(shí)出現(xiàn)下面的錯(cuò)誤:
src/XXX.c:31:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
其實(shí)是因?yàn)槲覀儧]有安裝Python開發(fā)環(huán)境,通過下面的命令解決。
復(fù)制代碼
代碼如下:
apt-get install python-dev
由于用到了MySQL,所以我們還需要安裝MySQL數(shù)據(jù)庫,當(dāng)我們通過apt-get命令安裝MySQL數(shù)據(jù)庫時(shí),還要為Python安裝相應(yīng)的模塊,否則將會(huì)報(bào)錯(cuò)如下:
No module named MySQLdb通過下面的安裝命令解決:
復(fù)制代碼
代碼如下:
pip install mysql-python
但是問題還沒有解決,在配置MySQL-Python的時(shí)又報(bào)錯(cuò)提示:
EnvironmentError: mysql_config not found原來默認(rèn)apt-get安裝的MySQL不包含開發(fā)文件,而mysql_config位于開發(fā)文件里,可以通過安裝下面的包來解決這個(gè)問題:
復(fù)制代碼
代碼如下:
apt-get install libmysqld-dev libmysqlclient-dev
另外,Pyramid框架內(nèi)有個(gè)小問題就是import zope.deprecation會(huì)報(bào)ImportError: No module named deprecation錯(cuò)??梢酝ㄟ^重新安裝zope.deprecation來解決:
復(fù)制代碼
代碼如下:
pip --force-reinstall --upgrade zope.deprecation
好了,先記錄在這里,折騰了好久。