mit-scheme依賴關係的解決

來源:互聯網
上載者:User

sudo apt-get install mit-scheme

下列的軟體包有不能滿足的依賴關係:

mit-scheme: 依賴: libltdl3 (>= 1.5.2-2) 但卻無法安裝它

到這個網站下載一個libtdl3的deb,安裝之,然後再裝mit-scheme。

mit-scheme是SICP(電腦程式構造與解釋)使用的教學語言,現在也是GNU官方維護的一個軟體。可惜的是,GNU只提供Debian,Ubuntu,MacOSX和Windows的二進位包,對於其他Linux和BSD的發行版本只提供源碼。所以,如果不是用上面支援的4種作業系統,大部分情況下只能從源碼編譯。

本文用於指導從源碼編譯安裝mit-scheme的讀者,希望為中國人學習scheme能提供一點協助(提醒:FreeBSD的ports目錄裡有mit-scheme,安裝起來還是很容易的,不在此文討論範圍)。本文參考了mit-scheme源碼包裡README文檔,結合mit-scheme20080130版本和Fedora8的實際情況做了簡化操作,我們假定你:

1.機器是x86的平台

2.看不太懂,或者不太願意看源碼裡帶的讀我檔案

3.安裝Fedora時裝好了必要的開發環境(一般這都不會有什麼問題)

4.從http://www.gnu.org/software/mit-scheme/下載了最新的為DebianGNU/Linux編譯的二進位包mit-scheme-20080130-ix86-gnu-linux.tar.gz,以及portablec的通用源碼包mit-scheme-c-20080130.tar.gz

5.這2個包被解壓到/tmp,構成了分類樹:/tmp/{bin,lib,mit-scheme-c-20080130}。這不是必須的,只是為了敘述的方便。如果你不知道怎麼作,只需要進入存放著下載源碼包的目錄,分別執行:tarzxvfmit-scheme-c-20080130.tar.gz-C/tmp

tarzxvfmit-scheme-20080130-ix86-gnu-linux.tar.gz-C/tmp

首先,要解決一個雞和蛋的問題:要從源碼編譯mit-scheme,你必須已經有了一個能工作的mit-scheme。

是不是像在開玩笑?編譯的指令碼需要調用scheme,而你編譯這個scheme正是為了有一個能用的scheme...

下面我們來解決這個問題:

進入到源碼的目錄的/tmp/mit-scheme-c-20080130/src/microcode下面,分別執行

#./configure

#make

這樣,我們就產生了一個和自身平台相關的scheme執行檔案。現在我們用其替換為DebianGNU/Linux編譯的二進位包裡的執行檔案:在目前這個發行版本,你可能會發現解壓後/tmp/bin/下面有多個執行檔案,mit-scheme-native是真正的檔案,而其他幾個都是mit-scheme-native的符號連結(這可能是為了保證向前相容);

執行#cp-f/tmp/mit-scheme-c-20080130/src/microcode/scheme/tmp/bin/mit-scheme-native即可替換。

接下來設定好這個scheme的運行環境:

#exportMITSCHEME_LIBRARY_PATH="/tmp/lib/mit-scheme"

#exportPATH="$PATH:/tmp/bin/"

現在,如果你在終端鍵入scheme-no-init-file,應該會看到sheme解譯器起來了。在=>提示符後鍵入(exit)退出。

如果以上步驟沒出錯,現在你便有了一個可以編譯mit-scheme的環境。進入/tmp/mit-scheme-c-20080130/src源碼目錄,確保變數MITSCHEME_LIBRARY_PATH為/tmp/lib/mit-scheme,PATH中有/tmp/bin/。

接下來,按順序執行

#./Setup.sh

#./configure

#make#這一步需要時間稍長

#makeinstall#需要root身份

進入/tmp/mit-scheme-c-20080130/doc,執行./configure,make,makeinstall(需要ROOT身份)安裝文檔。

如果你喜歡用emacs調用mit-scheme,可以進入/tmp/mit-scheme-c-20080130/etc/,把xscheme.el拷貝到emacs的載入路徑
#cp-fpxscheme.el/usr/share/emacs/site-lisp/
現在,在emacs裡M-x,鍵入load-library,斷行符號後再鍵入xscheme,

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.