這次服務系統採用的是最新的Debian 7.0,但是有幾個細節的忽略導致我折騰了一番,我再這裡再做個記錄吧
之前配置Linux伺服器時採用的是Debian系統一直很穩定,這次準備遷移到新的伺服器環境上,好在以前的配置我在部落格都做了備忘,所以很容易就搞定了,這次服務系統採用的是最新的Debian 7.0,但是有幾個細節的忽略導致我折騰了一番,我再這裡再做個記錄吧:
首先要安裝編譯環境,雖然我們通過apt-get可以方便的繞過手動編譯的環節,但是一些程式包可能內建編譯命令,可以編譯一些擴充程式,如果不安裝編譯環境,這些擴充程式將失效。通常通過下面的命令直接安裝開發編譯套件:
複製代碼代碼如下:
apt-get install build-essential
由於部分app是用Python開發的,而其所依賴的包包含可以提高效能的擴充,但是在編譯時間出現下面的錯誤:
src/XXX.c:31:20: fatal error: Python.h: No such file or directory
compilation terminated.
error: command 'gcc' failed with exit status 1
其實是因為我們沒有安裝Python開發環境,通過下面的命令解決。
複製代碼代碼如下:
apt-get install python-dev
由於用到了MySQL,所以我們還需要安裝MySQL資料庫,當我們通過apt-get命令安裝MySQL資料庫時,還要為Python安裝相應的模組,否則將會報錯如下:
No module named MySQLdb通過下面的安裝命令解決:
複製代碼代碼如下:
pip install mysql-python
但是問題還沒有解決,在配置MySQL-Python的時又報錯提示:
EnvironmentError: mysql_config not found原來預設apt-get安裝的MySQL不包含開發檔案,而mysql_config位於開發檔案裡,可以通過安裝下面的包來解決這個問題:
複製代碼代碼如下:
apt-get install libmysqld-dev libmysqlclient-dev
另外,Pyramid架構內有個小問題就是import zope.deprecation會報ImportError: No module named deprecation錯。可以通過重新安裝zope.deprecation來解決:
複製代碼代碼如下:
pip --force-reinstall --upgrade zope.deprecation
好了,先記錄在這裡,折騰了好久。