導航:首頁 > 源碼編譯 > 編譯器怎麼知道源程序路徑

編譯器怎麼知道源程序路徑

發布時間:2025-09-30 20:30:09

Ⅰ 怎麼在myeclipse里查看jar包的源代碼

編譯聽起來是一個非常高上大的技術詞彙,通俗的說,反編譯是一個對目標可執行程序進行逆向分析,從而得到原始代碼的過程。尤其是像.NET、java這樣的運行在虛擬機上的編程語言,更容易進行反編譯得到源代碼。當然,也有一些商業軟體,對其程序進行了混淆加密,這樣我們就很難用工具反編譯了。

1、Java反編譯插件 ——Jadclipse

JadClipse是Jad的Eclipse插件,是一款非常實用而且方便地Java反編譯插件,我們只需將下載的插件包復制到eclipse的plugins目錄下,然後修改window -> Preferences -> Java -> JadClipse 下的Path to decompiler ,如:C:pinjadnt158jad.exe,最後在Windows -> Perference -> General -> Editors -> File Associations中修改「*.class」默認關聯的編輯器為「JadClipse Class File Viewer」 即可。


官方網站:https://code.google.com/p/minjava/

7、Java Decompiler

這款反編譯器叫 「Java Decompiler」, 由 Pavel Kouznetsov開發,目前最新版本為0.2.5. 它由 C++開發,並且官方可以下載 windows、linux和蘋果Mac Os三個平台的可執行程序。

Ⅱ 如何指定gcc的默認頭文件路徑

gcc指定頭文件路徑及動態鏈接庫路徑

本文詳細介紹了Linux 下gcc頭文件指定方法,以及搜索路徑順序的問題。另外,還總結了,gcc動態鏈接的方法以及路徑指定,同樣也討論了搜索路徑的順序問題。本文包含了很多的例子,具有很強的操作性,希望讀者自己去走一遍。
一.#include <>與#include 「」
#include <>直接到系統指定的某些目錄中去找某些頭文件。
#include 「」先到源文件所在文件夾去找,然後再到系統指定的某些目錄中去找某些頭文件。
二.gcc指定頭文件的三種情況:
1.會在默認情況下指定到/usr/include文件夾(更深層次的是一個相對路徑,gcc可執行程序的路徑是/usr/bin/gcc,那麼它在實際工作時指定頭文件頭徑是一種相對路徑方法,換算成絕對路徑就是加上/usr/include,如#include 就是包含/usr/include/stdio.h)
2.GCC還使用了-I指定路徑的方式,即
gcc -I 頭文件所在文件夾(絕對路徑或相對路徑均可) 源文件
舉一個例子:
設當前路徑為/root/test,其結構如下:
include_test.c
include/include_test.h
有兩種方法訪問到include_test.h。
1. include_test.c中#include 「include/include_test.h」然後gcc include_test.c即可
2. include_test.c中#include 或者#include 然後gcc –I include include_test.c也可
3. 參數:-nostdinc使編譯器不再系統預設的頭文件目錄裡面找頭文件,一般和-I聯合使用,明確限定頭文件的位置。
在編譯驅動模塊時,由於非凡的需求必須強制GCC不搜索系統默認路徑,也就是不搜索/usr/include要用參數-nostdinc,還要自己用-I參數來指定內核頭文件路徑,這個時候必須在Makefile中指定。
頭文件搜索順序:
1.由參數-I指定的路徑(指定路徑有多個路徑時,按指定路徑的順序搜索)
2.然後找gcc的環境變數 C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJC_INCLUDE_PATH
3.再找內定目錄
/usr/include
/usr/local/include
/usr/lib/gcc-lib/i386-linux/2.95.2/include
/usr/lib/gcc-lib/i386-linux/2.95.2/../../../../include/g++-3
/usr/lib/gcc-lib/i386-linux/2.95.2/../../../../i386-linux/include
庫文件,但是如果裝gcc的時候,是有給定的prefix的話,那麼就是
/usr/include
prefix/include
prefix/xxx-xxx-xxx-gnulibc/include
prefix/lib/gcc-lib/xxxx-xxx-xxx-gnulibc/2.8.1/include
三.Linux指定動態庫路徑
眾所周知,Linux動態庫的默認搜索路徑是/lib和/usr/lib。動態庫被創建後,一般都復制到這兩個目錄中。當程序執行時需要某動態庫, 並且該動態庫還未載入到內存中,則系統會自動到這兩個默認搜索路徑中去查找相應的動態庫文件,然後載入該文件到內存中,這樣程序就可以使用該動態庫中的函 數,以及該動態庫的其它資源了。在Linux 中,動態庫的搜索路徑除了默認的搜索路徑外,還可以通過以下三種方法來指定。
1.在配置文件/etc/ld.so.conf中指定動態庫搜索路徑。
可以通過編輯配置文件/etc/ld.so.conf來指定動態庫的搜索路徑,該文件中每行為一個動態庫搜索路徑。每次編輯完該文件後,都必須運行命令ldconfig使修改後的配置生效。
舉一個例子:
所有源文件:
源文件1: lib_test.c
#include
void prt()
{
printf(「You found me!!!/n」);
}
源文件2: main.c
void prt();
int main()
{
prt();
return 0;
}

閱讀全文

與編譯器怎麼知道源程序路徑相關的資料

熱點內容
qtlinux教程pdf 瀏覽:960
單片機轉速測試 瀏覽:194
ac多模匹配演算法 瀏覽:226
雲計算伺服器多少錢一個 瀏覽:144
extjsjava項目 瀏覽:926
培訓機構出來的出名程序員 瀏覽:583
絕對命令經濟 瀏覽:199
android透明度漸變 瀏覽:486
編譯器怎麼知道源程序路徑 瀏覽:542
我想當程序員800字作文高中 瀏覽:694
伺服器配置高低是什麼意思 瀏覽:155
微信pdf怎麼發朋友圈 瀏覽:499
c動態鏈接庫編程 瀏覽:422
百度雲用解壓專家沒反應 瀏覽:725
2021款卡羅拉app怎麼安裝 瀏覽:1006
程序員自動化操作 瀏覽:239
單片機輸入上拉 瀏覽:165
安卓手機如何變成愛瘋手機 瀏覽:260
javamysql查詢分頁 瀏覽:113
上台演講的文件夾 瀏覽:940