當前位置:首頁 » 編程軟體 » 編譯軟體源碼

編譯軟體源碼

發布時間: 2023-09-15 17:38:18

Ⅰ 如何編譯安裝源碼包軟體

怎樣安裝以源碼包打包的軟體;

1、源碼包的打包格式;
源代碼一般以file.tar.gz file.tar.bz2或file.src.rpm 打包;file.tar.gz和file.tar.bz2格式的解包命令如下;
[root@localhost beinan]# tar jxvf file.tar.bz2
[root@localhost beinan]# tar zxvf file.tar.gz

至於file.src.rpm 的用法,請參見:《file.src.rpm 使用方法的簡介》

2、如何編譯安裝源碼包;(大多數)

1)解開軟體包查看幫助文檔;

我們解開一個包後,進入解壓包,一般都能發現README(或reame)和INSTALL( 或install);或doc(或DOC)目錄;看名字就知道個差不多;
比如我們下載一個比較新的fcitx 的軟體包,比如是 fcitx-3.2-050827.tar.bz2
我們在解開這個軟體包會會發現如下的文件;
[root@localhost fcitx]# tar jxvf fcitx-3.2-050827.tar.bz2
[root@localhost fcitx]#cd fcitx
[root@localhost fcitx]# ls
aclocal.m4 config.guess configure debian INSTALL Makefile.in src xpm
AUTHORS config.h.in configure.in depcomp install-sh missing THANKS
autogen.sh config.rpath COPYING doc lib mkinstalldirs TODO
ChangeLog config.sub data fcitx.spec.in Makefile.am README tools
所以我們就可以看fcitx的INSTALL 和doc目錄的安裝文檔了;裡面都告訴我們如何安裝;
有時安裝文檔也會在開發者的主頁上有詳細的說明,及常見問題的處理等;比如 LumaQQ

2)編譯安裝軟體的條件;

首 先我們在linux系統中至少得把開發工具安裝上,比如 gcc ;perl;python;glibc;gtk;make ;automake 等開發工具或基礎包;還要安裝一些相應的開發包,一般是文件名包括dev的,比如kernel-devel;還有一些開發庫,比如以lib開頭的;如果您 在編譯軟體時,有時提示缺少什麼東西之類的,大多少的是這些開發工具和開發庫等;從光碟中找出安裝就是了;有時光碟沒有提供,請用google搜索相應的 軟體包,有時可能也會用到源碼包編譯安裝所依賴的包;
有時本來系統中已經安裝了所依賴的包,但系統提示找不到應該怎麼辦?這時需要我們設置一下PKG_CONFIG_PATH的環境變數就行了;
#export PKG_CONFIG_PATH=/usr/lib/pkgconfig

#export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
然後我們再來運行編譯的./configure ;make ;make install ,嘗試著來吧;
java開發的工具開發的程序,要用到 jre或者jdk ;jdk已經包括jre了,所以如果我們只是要求有一個java程序運行的環境,只需要安裝jre就行了;安裝好jre,配置一下java的環境變數就可以用了。如果是圖形界面的程序,點點滑鼠就OK了;
用perl 開發的程序,是需要perl環境的,所以必須得把perl的包安裝上,python 也同理;

3)編譯安裝軟體的方法;
大多以tar.gz 和tar.bz2打包軟體,大多是通過 ./configure ;make ;make install 來安裝的;有的軟體是直接make;make install ;
我們可以通過./configure --help 來查看配置軟體的功能;大多軟體是提供./configure 配置軟體的功能的;少數的也沒有,如果沒有的就不用./configure ;直接make;make install 就行了;
./configure 比較重要的一個參數是 --prefix ,用--prefix 參數,我們可以指定軟體安裝目錄;當我們不需要這個軟體時,直接刪除軟體的目錄就行了;
比如我們可以指定fcitx 安裝到 /opt/fcitx 目錄中;
[root@localhost fcitx]#./configure --prefix=/opt/fcitx
如果我們不需要fcitx 時,可以直接刪除 /opt/fcitx 目錄;
所以我們舉這個例子中,fcitx如果定製安裝到 /opt/fcitx目錄中,完整的安裝方法應該是:
[root@localhost fcitx]# tar jxvf fcitx-3.2-050827.tar.bz2
[root@localhost fcitx]#cd fcitx
[root@localhost fcitx]# ./configure --prefix=/opt/fcitx
[root@localhost fcitx]# make
[root@localhost fcitx]# make install
調用fcitx ,應該是
[beinan@localhost ~]#/opt/fcitx/bin/fcitx
如果您想要讓fcitx 只要執行fcitx ,就能調用,請配置環境變數,或者在/usr/bin 中做一個fcitx 的鏈接;
[root@localhost beinan]# ln -s /opt/fcitx/bin/fcitx /usr/bin/fcitx
一般的情況下都有說,但大多軟體沒有提供源碼包的卸載方法;我們可以找到軟體的安裝點刪除。主要看你把它安裝在哪了。
設置環境變數PATH,請參見:《在Fedora Core 中,有些常用命令怎麼沒有?解決辦法設置PATH》
所以您的PATH可以設置成這樣的;
export PATH=".:/bin:/usr/bin:/usr/local/bin:/usr/sbin:/usr/X11R6/bin:/sbin:/opt/fcitx/bin"
當然這只是舉個例子,fcitx 可以進入桌面自動運行的,請參看 http://www.fcitx.org 官方站上的安裝說明;舉個例子只是讓大家好理解一點;
再舉一個例子,比如我想安裝mlterm ;並指定安裝目錄為/opt/mlterm中; http://mlterm.sourceforge.net
#./configure --prefix=/opt/mlterm
#make
#make install

把源碼包安裝的軟體,都指定安裝在 /opt目錄中,這樣不就知道了軟體安裝在哪裡了;也方便卸載;

Ⅱ 什麼是源代碼編譯

零基礎的人想要寫代碼首先需要進行一定的學習,了解一些基礎的編程知識,選擇適合自己的程序語言,之後通過不斷的學習就可以寫代碼。

從簡單的、直接的幾行十幾行程序開始,比如計算器;到復雜的小工具,比如大數計算器。這個過程中逐漸明白數組、指針、內存布局、函數,了解遞歸、棧、鏈表,然後學基本的數據結構。

C語言也好,python也好,得學會把自己的思考用程序實現。舉個例子,想制定計劃表,安排自己的時間,那這個問題就可以寫個程序來實現;想做筆記、管理自己的文件,這也是一個程序。從簡單的、直接的幾行十幾行程序開始,比如計算器;到復雜的小工具,比如大數計算器。

代碼組合

源代碼作為軟體的特殊部分,可能被包含在一個或多個文件中。一個程序不必用同一種格式的源代碼書寫。例如,一個程序如果有C語言庫的支持,那麼就可以用C語言;而另一部分為了達到比較高的運行效率,則可以用匯編語言編寫。

較為復雜的軟體,一 般需要數十種甚至上百種的源代碼的參與。為了降低種復雜度,必須引入一種可以描述各個源代碼之間聯系,並且如 何正確編譯的系統。在這樣的背景下,修訂控制系統(RCS)誕生了,並成為研發者對代碼修訂的必備工具之一。

Ⅲ EXE文件反編譯成源碼

EXE文件可以通過步驟來反編譯成源碼,具體步驟如下:

1、在網路上搜索下載反編譯工具ILSpy,ILspy是一個開源的.net反編譯軟體,使用十分方便。解壓後如圖,雙擊.exe文件打開解壓工具。

(3)編譯軟體源碼擴展閱讀:

反編譯也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(比如可執行程序)進行「逆向分析、襲轎前研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方帆培法等設計要素,某些特拍清定情況下可能推導出源代碼。

exe是編譯好的程序文件 要看結構就得反編譯 但是通常不能把可執行文件變成高級語言源代碼,只能轉換成匯編程序。 所以要要看結構不止要會反編譯 還得精通匯編語言。

Ⅳ 自己可以編譯安卓源碼嗎

用最新的Ubuntu 16.04,請首先確保自己已經安裝了Git.沒安裝的同學可以通過以下命令進行安裝:

sudo apt-get install git git config –global user.email 「[email protected]」 git config –global user.name 「test」

其中[email protected]為你自己的郵箱.

簡要說明

android源碼編譯的四個流程:1.源碼下載;2.構建編譯環境;3.編譯源碼;4運行.下文也將按照該流程講述.

源碼下載

由於某牆的原因,這里我們採用國內的鏡像源進行下載.
目前,可用的鏡像源一般是科大和清華的,具體使用差不多,這里我選擇清華大學鏡像進行說明.(參考:科大源,清華源)

repo工具下載及安裝

通過執行以下命令實現repo工具的下載和安裝

mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo

補充說明
這里,我來簡單的介紹下repo工具,我們知道AOSP項目由不同的子項目組成,為了方便進行管理,Google採用Git對AOSP項目進行多倉庫管理.在聊repo工具之前,我先帶你來聊聊多倉庫項目:

我們有個非常龐大的項目Pre,該項目由很多個子項目R1,R2,...Rn等組成,為了方便管理和協同開發,我們為每個子項目創立自己的倉庫,整個項目的結構如下:


這里寫圖片描述

執行完該命令後,再使用make命令繼續編譯.某些情況下,當你執行jack-admin kill-server時可能提示你命令不存在,此時去你去out/host/linux-x86/bin/目錄下會發現不存在jack-admin文件.如果我是你,我就會重新repo sync下,然後從頭來過.

錯誤三:使用emulator時,虛擬機停在黑屏界面,點擊無任何響應.此時,可能是kerner內核問題,解決方法如下:
執行如下命令:

  • ./out/host/linux-x86/bin/emulator -partition-size 1024 -kernel ./prebuilts/qemu-kernel/arm/kernel-qemu-armv7

  • 通過使用kernel-qemu-armv7內核 解決模擬器等待黑屏問題.而-partition-size 1024 則是解決警告: system partion siez adjusted to match image file (163 MB >66 MB)

    如果你一開始編譯的版本是aosp_arm-eng,使用上述命令仍然不能解決等待黑屏問題時,不妨編譯aosp_arm64-eng試試.

    結束吧

    到現在為止,你已經了解了整個android編譯的流程.除此之外,我也簡單的說明android源碼的多倉庫管理機制.下面,不妨自己動手嘗試一下.

    Ⅳ Visual Studio 2019怎麼編譯C語言源程序

    1、首先,打開C語言編輯器工具,然後在該工具中編寫程序的源代碼,如下圖所示,然後進入下一步。

    Ⅵ 如何在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,即可。

    Ⅶ linux中源碼編譯需要哪些軟體

    一、程序的組成部分
    Linux下程序大都是由以下幾部分組成:
    二進制文件:也就是可以運行的程序文件
    庫文件:就是通常我們見到的lib目錄下的文件
    配置文件:這個不必多說,都知道
    幫助文檔:通常是我們在Linux下用man命令查看的命令的文檔
    二、Linux下程序的存放目錄
    Linux程序的存放目錄大致有三個地方:
    /etc,
    /bin,
    /sbin,
    /lib
    :系統啟動就需要用到的程序,這些目錄不能掛載額外的分區,必須在根文件系統的分區上
    /usr/bin,/usr/sbin,/usr/lib:操作系統核心功能,可以單獨分區
    /usr/local/bin,/usr/local/sbin,/usr/local/lib,/usr/local/etc,/usr/local/man:這個用於安裝第三方程序,分別對應了二進制文件、庫文件、配置文件、幫助文檔的目錄
    通常來說我們安裝程序就安裝在
    /usr/local目錄下
    三、編譯安裝源程序
    1、使用如下命令查看當前是否安裝了gcc編譯器,沒有可以先用yum安裝gcc
    gcc
    --version
    #查看是否安裝gcc
    2、解壓源碼包,例如:
    tar
    -xvf
    nginx-1.7.7.tar.gz
    #解壓源碼包
    3、進入解壓好的源碼包:
    cd
    nginx-1.7.7
    #進入源碼包
    4、執行configure文件,此文件有兩個功能:1、讓用戶選定編譯特性;2、檢查編譯環境。configure執行後將生成MakeFile文件。例如:
    ./configure
    --prefix=/usr/local/nginx
    --conf-path=/etc/nginx/nginx.conf
    其中我們通過--prefix制定了安裝路徑,通過--conf-path制定了配置文件的具體位置。注意:不是所有的程序的configure參數都是一樣的
    可以使用
    ./configure
    --help查看詳細參數說明。如果該程序所依賴的庫在當前系統中沒有安裝,則會導致configure最後報錯,遇到這種情況就需要你先安裝依賴庫。
    5、執行make命令,編譯程序
    make
    6、編譯成功後就可以安裝了,執行如下命令
    make
    install
    到此程序就算安裝完成了,但是不要忘了還有後續的配置哦
    四、配置程序
    1、修改PATH環境變數,以能夠識別此程序的二進制文件路徑;
    修改/etc/profile文件,在文件中
    添加
    export
    PATH=$PATH:/path/to/somewhere#記得是可執行文件所在的目錄,路徑中不要包含可執行文件。
    然後執行

    source
    /etc/profile
    #是我們的修改生效

    2、默認情況下,系統搜索庫文件的路徑/lib,
    /usr/lib;
    要增添額外搜尋路徑(注意:有的程序不提供庫文件,那就不需要此設置了)
    在/etc/ld.so.conf.d/中創建以.conf為後綴名的文件,而後把要增添的路徑直接寫至此文件中;然後執行如下命令使其生效
    ldconfig
    3、如果程序提供了庫文件,也會相應的提供頭文件,一般在安裝目錄的include目錄下,系統默認掃描頭文件的路徑是:/usr/include。我們可以在/usr/include下用鏈接連接到我們安裝程序的頭文件。
    ln
    -s
    /usr/local/nginx/include
    /usr/include/yourname
    4、可能程序還提供了幫助文檔,一般是安裝目錄下的man目錄,為了我們可以使用man命令查看我們程序的幫助文檔,我們需要:在/etc/man.config中添加一條MANPATH,指向我們的文檔目錄

    熱點內容
    sql語句視圖 發布:2024-11-19 08:30:23 瀏覽:932
    ftpjava上傳 發布:2024-11-19 08:30:09 瀏覽:407
    蘋果攝像機為什麼比安卓清晰 發布:2024-11-19 08:20:20 瀏覽:830
    為什麼安卓手機下載不了微信 發布:2024-11-19 08:19:37 瀏覽:836
    android情景分析 發布:2024-11-19 08:19:36 瀏覽:190
    系統存儲設備容量 發布:2024-11-19 08:05:28 瀏覽:994
    向外訪問 發布:2024-11-19 07:50:21 瀏覽:555
    androidbase64圖片 發布:2024-11-19 07:48:45 瀏覽:727
    搭建小說網站國外伺服器 發布:2024-11-19 07:42:49 瀏覽:799
    在家如何更改網路密碼 發布:2024-11-19 07:36:21 瀏覽:797