1. 源碼怎麼使用
可以用記事本打開的好多行英文的,用編程語言寫好的軟體源程序經過編譯成目標程序,才能運行。一般目標程序不能再修改了。電腦上安裝的軟體都是目標程序。源程序不可能直接運行的。提倡軟體開源的人士認為應該提供源程序給用戶,讓用戶自己修改,有利於軟體行業的發展。反對的人覺得這樣不利於保護版權。
(1)怎麼使用源碼包擴展閱讀
源代碼主要有以下2種作用:
1、生成目標代碼,即計算機可以識別的代碼。
2、對軟體進行說明,即對軟體的編寫進行說明。為數不少的初學者,甚至少數有經驗的程序員都忽視軟體說明的編寫,因為這部分雖然不會在生成的程序中直接顯示,也不參與編譯。但是說明對軟體的學習、分享、維護和軟體復用都有巨大的好處。
因此,書寫軟體說明在業界被認為是能創造優秀程序的良好習慣,一些公司也硬性規定必須書寫。
2. linux中源代碼包安裝的基本步驟是什麼
詳解linux源碼包安裝過程
1. 解壓縮包
可以通過下載或其他方式獲得了一個軟體包,通常它是一個壓縮文件,大部分可能是存檔的和壓縮的,這些文件一般以 .tar .gz為擴展名。
首先拷貝它到一個目錄,然後 untar 和 gunzip 解壓它。 通常這個命令是
tar xzvf filename [filename 是軟體文件名稱]
解壓後的文件一般會在當前目錄下的創建子目錄,並以這個包名來命名。 你也可以用用這個命令預先查看結果 tar tzvf filename,顯示包里有那些解壓文件。
源文件如果是新的 bzip2 (.bz2) 格式,可用
bzip2 -cd filename | tar xvf -,或更簡單的 tar xyvf filename ,這很不錯的tar命令被不斷的完善。
說明:
A:有時候一些文件必須安裝在用戶的 home 目錄下,或更多的是在一個固定的目錄,比如 /, /usr/src, 或 /opt 。所以必須仔細閱讀安裝包的配置信息。當一個軟體包里如果有config 和 Makefiles 文件則最好去編輯它,這里包括了安裝指令和說明。提示:你改變 makefile 會導致不同的結果。大部分軟體包允許用 make install 自動處理安置二進制文件在適當的系統位置。
B:你可能碰到過一些共享文件、shell 存檔文件、尤其是 Internet 上的源碼新聞組。它們保留的原因是具有人性化的可讀性,並且允許新聞組緩沖並通過它們篩選和剔除出不合格的。它們可能用 unshar filename.shar 命令來解壓。
C: 一些源碼存檔文件是用非標準的 DOS,Mac 或其他壓縮的比如:
zip, arc, lha, arj, zoo, rar, and shk.
D: 有時候,你可能需要使用一個 patch 或顯示改變了的 diff 文件來升級或修復存檔的源碼文件。這 doc 文件或者 README 文件將告訴你怎麼去使用。一個很好的命令用標准語法來調用的命令是 patch < patchfile.
2: 關於 rpm 安裝包
一些 Linux 用戶懼怕通過使用源碼來手動安裝軟體包,不過現在有方便的 rpm 和 deb 或 新格式的 slp 包。例如:rpm 安裝運行平穩又快,作為一個軟體安裝在某幾個有名的操作系統。
作為方便的RPM包也存在很多不好的缺點,例如:
A: 要了解軟體中更多更詳細的內容你必須去在二進制中去了解,而不是rpm包。
B: 還有安裝一個 rpm 包如果需要依賴關系那麼安裝就可能會導致失敗。
C: 當 rpm 請求你系統中不同版本的庫,那麼安裝將不能繼續,除非你為錯誤的庫位置創建連接符號到正確的位置。
說明:必須使用root 安裝 rpm 和 deb 。因為它需要必須的寫入許可權。
最簡單的,用命令 rpm -i packagename.rpm 和 dpkg --install packagename.deb 會自動解包和安裝。
3:關於安裝 Linux 包出現的一些問題及解決方案
假設 make 失敗有個鏈接錯誤: -lX11: No such file or directory,正好在 xmkmf 之後已被調用,這可能意味著 Imake 不能被完全建立。檢查第一部分 Makefile 文件的的行是這樣:
· LIB= -L/usr/X11/lib
· INCLUDE= -I/usr/X11/include/X11
· LIBS= -lX11 -lc -lm
這個 -L 和 -I 開關告訴編譯器和鏈接分別在哪裡找到 library 和 include 文件。在這個例子里, X11 庫應該在 /usr/X11/lib 目錄,且 X11 包含文件應該在 /usr/X11/include/X11 目錄里。假如對於你的機器上的這個錯誤,請處理修改 Makefile 並重新再 make。
沒有聲明涉及的數學庫函數,像下列各項:
/tmp/cca011551.o(.text 0x11): undefined reference to `cos'
要修復它,需要明確鏈接到匹配的庫,在 Makefile (看先前的例子) 里增加一個 -lm 到 LIB 或 LIBS 標記 。
用其他方法嘗試
仍然失敗 如果失敗,參考下列腳本:
make -DUseInstalled -I/usr/X386/lib/X11/config
這個直接方式的類別相當於。
在少數例子里,用 root 運行 ldconfig 可能會解決:
# ldconfig 更新共享庫鏈接符號。
一些 Makefiles 使用你系統里未被承認的庫別名。一個例子,構建可能需要 libX11.so.6 ,但是在 /usr/X11R6/lib 不存在文件或鏈接。然而,在那裡是 libX11.so.6.1。解決方法是用 root 運行ln -s /usr/X11R6/lib/libX11.so.6.1 /usr/X11R6/lib/libX11.so.6 ,接著需要運行 ldconfig 。
有一些包需要你安裝一個或更多庫的升級版本。需要拷貝一個或更多的庫到適當的目錄里,刪除舊的庫,重新設置動態鏈接庫。
4:一些其他的問題處理
安裝一個shell 腳本如果出現:No such file or directory 的錯誤消息。這是可以檢查文件許可權確定文件事可執行的,並檢查文件頭確定是否 shell 或程序是腳本在指定的位置被調用。一個例子,這個腳本可能是這樣開始的:
#!/usr/local/bin/EDEN
如EDEN的實際安裝位置是在你的 /usr/bin 目錄,用一個 /usr/local/bin 替代
這個腳本不能運行有兩個方法來糾正!!
A: 文件頭改成 #!/usr/bin/EDEN
B: 或增加一個鏈接符, ln -s /usr/bin/EDEN
5:一個典型的例子 Xloadimage
首先說明下面的例子來源於國外網站的一個技術實例,這里我做了翻譯和整理。
這個例子展現一個簡單的問題。xloadimage 程序對我的圖形工具的調整設置是有用的附加。從源碼目錄拷貝文件,用 tar xzvf 解壓文件,可是在運行 make 的時候出現令人討厭的錯誤並停止了。
gcc -c -O -fstrength-rece -finline-functions -fforce-mem
-fforce-addr -DSYSV -I/usr/X11R6/include
-DSYSPATHFILE=\"/usr/lib/X11/Xloadimage\" mcidas.c
In file included from /usr/include/stdlib.h:32,
from image.h:23,
from xloadimage.h:15,
from mcidas.c:7:
/usr/lib/gcc-lib/i486-linux/2.6.3/include/stddef.h:215:
conflicting types for `wchar_t'
/usr/X11R6/include/X11/Xlib.h:74: previous declaration of
`wchar_t'
make[1]: *** [mcidas.o] Error 1
make[1]: Leaving directory
`/home/thegrendel/tst/xloadimage.4.1'
make: *** [default] Error 2
這個錯誤消息包含了實質的線索:
查看 image.h 文件的 23 行:
#include < stdlib.h>
在源碼的某處對於 xloadimage, wchar_t 已經在指定標准 include 文件重新定義。 告訴我們首先在 image.h 的 23 行嘗試注釋它,或許 stdlib.h include 是不存在的,畢竟不是所有都是必需的。
在這點,構建中的收益來源於所有任何一個致命錯誤。xloadimage 現在功能正常。
6: 安裝 Linux 包的一些總結
堅持自己動手處理所有的安裝出現的問題,不斷總結努力學習,從錯誤里去仔細研究,努力動手排錯,從每個不足甚至失敗的地方得到擴充和提升,可以增強安裝構建軟體的技巧。
3. 如何使用rpmbuild編譯源碼RPM包
1、查看操作系統版本和內核版本
2、創建相關目錄
/usr/src/redhat/SOURCES //存放源代碼,補丁,圖標等文件。/usr/src/redhat/SPECS //存放用於管理rpm製作進程的spec文件。/usr/src/redhat/BUILD //解壓後的文件存放在這里。/usr/src/redhat/RPMS //存放由rpmbuild製作好的二進制包。/usr/src/redhat/SRPMS //存放由rpmbuild製作好的源碼包。
3、下載Nginx源碼包
下載源碼包到SOURCES目錄,不需要解壓。
4、手工創建SPEC文件,由於spec文件是由spec語言編寫的,請注意spec語言的語法。
SPEC文件內容如下:
#Example Spec File For Nginx# Edited By LaoXu 7.Mar.2013#Summary: High Performance Web ServerName: nginxVersion: 1.3.9Release: el5License: GPLGroup: Applications/ServerSource:URL:Distribution: LinuxPackager: XuYuanzhen <absolutey.>%descriptionnginx [engine x] is a HTTP and reverse proxy server, as well as a mail proxy server%preprm -rf $RPM_BUILD_DIR/nginx-1.3.9zcat $RPM_SOURCE_DIR/nginx-1.3.9.tar.gz | tar -xvf -%buildcd nginx-1.3.9./configure --prefix=/usr/local/nginxmake%installcd nginx-1.3.9make install%preunif [ -z "`ps aux | grep nginx | grep -v grep`" ];thenkillall nginx >/dev/nullexit 0fi%files/usr/local/nginx5、開始RPM製作
4. 如何在Ubuntu中通過編譯源碼包安裝軟體Pidgin
步驟如下:
1、首先,通過Ubuntu「菜單->添加/刪除」或者是Ubuntu新立得軟體包管理程序(通過搜索pidgin卸載已經安裝的相關文檔)刪除老版本的Pidgin.
2、然後使用下面命令配置相關編譯環境:
sudo
apt-get
build-dep
pidgin
3、接下來下載源碼包並解壓,打開終端,通過cd命令進入源碼包解壓的目錄;
運行./configure配置編譯環境,如果成功,最後會有個「complete」並請運行「make」的提示;如果沒有,如出現quote
「XScreenSaver
extension
development
headers
not
found.
Use
–disable-screensaver
if
you
do
not
need
XScreenSaver
extension
support,
this
is
required
for
detecting
idle
time
by
mouse
and
keyboard
usage.
」
end
of
quote
說明缺少「XScreenSaver」關聯文件,可以通過新立得軟體包管理程序搜索「XScreenSaver」安裝相關的「XScreenSaver.dev」文件;實在沒有XScreenSaver的dev文件,就按提示運行./configure
--disable-screensaver;
4、接下來就make;
5、再
make
check;
6、再
sudo
make
install;
7、再
make
clean;
8、再
make
distclean;
9、最後
菜單->互聯網->
Pidgin,即可。
5. 如何使用Maven構建《hadoop權威指南3》隨書的源碼包
執行完上述步驟後,輸入hbase命令出現如下界面,就說明已經安裝成功了(別忘了執行". ~/.bashrc"使配置的環境變數生效):
下面我們就可以切換到本書的源文件包的根目錄下使用maven來構建本書的jar包了:
% mvn package -DskipTests -Dhadoop.version=1.0.4
執行過這條命令後就是很長時間的等待,maven會到他的中央倉庫和apache的倉庫中下載所需要的jar包和pom.xml文件(這個過程可能要持續大約一個小時,要確保你的電腦已經連上網路,下載完成後在~/.m2/repository文件夾中——也即本地倉庫——可以看到已經下載下來的jar包和pom文件),然後再逐個構建根目錄下pom.xml中配置的moles,等所有的工作做完就可以看到已經打包的各個jar包,從而可以很方便的在命令行使用hadoop命令測試書中的代碼了
6. ubuntu下如何獲取源碼包和源碼
1、在獲取源碼包之前,確保在軟體源配置文件/etc/apt/sources.list中添加了deb-src項 2、使用如下命令獲取xxx源碼包的詳細信息: sudo apt-cache showsrc xxx這用來查詢當前鏡像站點中是否有該源碼包。 3、源碼包中通常包含3個文件,分別以dsc,orig.tar.gz和diff.gz為後綴名。 sudo apt-get source xxx 命令來獲取源碼包,它會將源碼包下載到用戶當前目錄 並在命令執行過程中,調用dpkg-source命令,根據dsc文件中的信息,將源碼包解壓到同名目錄中,應用程序的源代碼就在這裡面。 sudo apt-get source xxx 要強調的是,在下載源碼包前,必須確保安裝了dpkg-dev(執行」apt-get install dpkg-dev」來安裝), 否則,只會下載源碼包的3個文件,但不會解壓縮源碼包。當然你也可以自己用dpkg-source命令去解壓縮源碼包。 4、在編譯源碼包前,需要安裝具有依賴關系的相關軟體包。使用」apt-get build-dep」命令可以主動獲取並安裝所有相關的軟體包。 sudo apt-get build-dep xxx 5、現在可以來編譯源碼包了,首先進入源碼所在目錄,使用dpkg-buildpackage命令來編譯源碼包,它會將生成的Deb軟體包放置在上層目錄中。cd xxx sudo dpkg-buildpackage 這樣就會編譯生成xxx_i386.deb 6、安裝軟體包。使用」dpkg –i」命令來安裝生成的Deb軟體包。
7. 如何將源碼包導入eclipse
1.選擇菜單「文件/新建/項目」,選擇「Java項目」,彈出「創建Java項目」對話框。
2.在「創建Java項目」中輸入「項目名」,項目名可以為任意名字,不必和main類的名字一樣。這里假設為「Notepad」。
3.在「內容」中有兩個單選按鈕,視你的需要來使用。其中「在工作空間中創建新項目」會在你的工作空間中創建一個新目錄,目錄名與項目名一致;
4.「從現有資源創建項目」可以在源碼所在目錄中直接編譯運行,生成的class文件也會存放在源碼目錄中。
5.run as
8. spring的源碼jar怎麼使用
首先,在工程右鍵,屬性中,添加必要的jar包。
選中必要的jar包,上面給出的源碼jar包中,導入spring3.0.5中的所有jar包。
其中lib內的是spring的jar包,用到哪個導入哪個,不知道的話,全部導入就行了。
外面的幾個jar包,用於日誌以及mysql的驅動。commons-logging jar包是必須的,其他的隨意吧。
不確定的話,lib外面的這幾個jar包以及lib裡面的都導入就行了。
9. 如何正確地閱讀 python 源碼包
首先你要找到源碼的位置,你可以使用下面的方法:
如果你可以在命令行運行python,你可以使用下面的命令查看目錄。
>>> import string
>>> string.__file__
'/usr/lib/python2.7/string.pyc'
>>>
對應目錄下的string.py就是package的源碼,不過有些庫因為是c寫的,會提示錯誤,這樣的庫就需要你下載python源碼,直接看c的源文件了。
10. 如何在CentOS 7上安裝源碼包
不同的源碼包,有不同的方法,一般來說都有這幾步:
復制原碼包到自己想要的文件夾,例如 /usr/src,要解壓就就解壓。
然後進入到解壓後的文件夾內
./configure ,這一步很重要,可以指定很多參數,自己據需要查查安裝文檔使用。
make
make install
一般就這3步。後面兩步有時可以一齊運行: make && make install
前兩步要留意有沒有出錯,據出錯信息安裝所需要的庫就可以了。前兩步沒錯誤,第3步很少出事的。