歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 12.04 LTS下編譯安裝 SVN 1.7

Ubuntu 12.04 LTS下編譯安裝 SVN 1.7

日期:2017/2/28 15:51:50   编辑:Linux教程

由於最新Ubuntu的官方源上的svn版本是1.6,和eclispe上面的subclipse插件版本對svn版本要求為1.7有不合適的地方,尤其是javahl的庫導致現在eclipse使用起來很bug,現在可以使用其他人自己打包的svn1.7來進行嘗試,相關參考見下:http://steveliles.github.com/subversion_1_7_eclipse_integration_in_Ubuntu.html

  1. Adddominik's repository: sudo apt-add-repositoryppa:dominik-stadler/subversion-1.7

  2. Updateapt: sudo apt-get update

  3. Installlibsvn-java: sudo apt-get install libsvn-java

  4. Installsubversion 1.7: sudo apt-get install subversion


注意自己編譯svn的代碼最後一定要運行sudoldconfig

編譯代碼的過程(請參照INSTALL文檔,然後再以我這個為參考):

  1. make distclean 清除之前全部的生成的文件包括makefile

  2. ls -l /usr/local/lib/libsvn* 查看lib目錄下關於svn相關的庫的編譯時間最好是統一時間編譯安裝的否則不要輕易運行下一步刪除

  3. sudo rm /usr/local/lib/libsvn* 刪除之前自己編譯安裝的svn相關的庫文件

  4. ./autogen.sh 重新檢查配置,並生成新的configure

  5. ./configure --enable-maintainer-mode –enable-javahl 進行make之前的環境檢查,檢查需要的庫依賴是否齊全,不齊全的話,請先apt-cachesearch 然後apt-getinstall 對應的庫文件,–enable-javahl這個是為了編譯javahl相關的庫依賴做准備

  6. make -j2 external-all 這個不清楚干嗎的(測試沒有輸出,應該進行一些簡單測試吧)

官方的文檔描述如下:

Notethat if you commonly build with the -jN option to make and

haveused the get-deps.sh script to fetch dependencies, the make

stepabove may fail, because we don't ensure that third party

librariesin our source tree will finish building before

subversionitself. If you want to use -jN, use the following

instead:

$./configure


$make -jN external-all

$make -jN local-all

$make check

#make install

  1. make -j2 local-all 進行代碼編譯

  2. make check 進行編譯後的測試檢查,我覺得很慢就沒有做

  3. make check-clean 刪除代碼檢查的中間文件(我之前檢查了一般,我Ctrl-C取消掉了,所以就運行這個刪掉)

  4. make javahl 編譯javahl的庫文件(這個很重要,因為subclipse對它依賴)見下


  1. sudo make install install-docs install-javahl install-man install-static將編譯好的文件和幫助文檔安裝到系統中

  2. sudo ldconfig-v進行編譯後的庫文件的連接,很重要,否則啟動eclispe提示javahl庫缺失,而實際上對應的路徑上卻存在這個文件,搞不清楚啊,我最後只有重新編譯安裝一遍了,蛋疼!!!我的輸出如下(列出部分)

更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2

Copyright © Linux教程網 All Rights Reserved