object-files

    0熱度

    1回答

    我想爲不可執行二進制文件生成控制流圖。目標是對Linux內核生成的二進制文件進行靜態分析。有沒有可以做到這一點的工具?我通過搜索找到的工具僅適用於可執行文件。 我使用obj-dump將二進制反彙編爲程序集。目前,我對彙編基本塊進行分析,但在這種方法中,我無法保證是否覆蓋了所有的執行路徑。

    1熱度

    1回答

    這適用於可重定位的ELF對象文件,而不是完全鏈接的ELF或ELF共享庫。 目前,如果有一個程序,如: main.c: int main() { foo(); return 0; } 與編譯GCC -c main.c中 它會生成一個main.o 我想做到的是什麼替代foo與「傻瓜或食物」(更長的名稱)AFTER目標文件是已經創建。 因爲目前如果我們伸過

    1熱度

    1回答

    我試圖編譯我的代碼,但它不工作。我得到這個在學校編譯,但我不能編譯我的家用電腦。我似乎無法弄清楚爲什麼。我需要修正這個錯誤才能繼續我的任務。此外,這個list.o文件是profs文件。我必須使用這個文件。我是一名管理我的linux的初學者。請和我一起裸照。 我試過的解決方案有點類似? 我已經將gcc更新爲gcc-7。 我所在的libc.a /usr/lib/x86_64-linux-gnu/lib

    0熱度

    2回答

    我有測試C程序:AC int a = 0; static int fa_local() { a = 78; int b; int c; } int fa_global() { a = 7777; fa_local(); } int test() { a = 6666; fa_global(); }

    6熱度

    2回答

    我寫下面的簡單的C程序(test.c的): - #include<stdio.h> int main() { return 0; } 和執行的follwing瞭解的.bss段大小的變化。 gcc test.c -o test size test 輸出來如: - text data bss dec hex filename 1115 552 8 1675

    1熱度

    3回答

    我們正在編制使用其中的文件,首先製作成目標文件泛型的軟件,它們是建立像這樣: arm-unknown-linux-gnu-gcc -c -O2 -Wstrict-prototypes -Wdeclaration-after-statement -fsigned-char -I/opt/tm-sdk/include -mlittle-endian -Wno-trigraphs -fno-strict

    -1熱度

    1回答

    我有一個單獨的對象文件中聲明一個類時,然後在另一個文件中的主要功能使用它的一個問題聲明的類: main.cpp中: #include <helloclass.hpp> using namespace std; int main() { Hello hi; hi.hello(); return 0; } helloclass.cpp: #include

    0熱度

    1回答

    作爲一個新手gcc和MCU世界,我看到一個奇怪的行爲,我希望有人可以幫助我。我可以創建並沒有任何問題,我armv7e米板(CC3220S_LAUNCHXL)執行一個簡單的應用程序。然而,當我鏈接未引用的任何地方,並且不引用任何額外的代碼的目標文件時,程序停止得到在板執行。沒有編譯或鏈接時間錯誤;只是該計劃將無法正常工作。 我的問題是如何連接未使用的對象文件會破壞程序的執行?

    2熱度

    2回答

    我的操作系統的源到目標文件是Windows 10,我用命令提示符這段時間進行編譯。 根據,我讀的書,編譯所有的源文件,並使它成爲一個目標文件,(在當前目錄中)做到這一點通過鍵入以下命令: gcc -c *.c 它說的操作系統將會取代的* .c與所有的C文件名 但爲什麼我收到此錯誤? gcc: error: *.c: Invalid argument gcc: fatal error: no

    2熱度

    1回答

    我有一些靜態的,常量的數據,我需要能夠在運行時檢索。 我需要將這些數據放在哪裏,我該如何訪問它? 我試過把數據放在.text和.data中,並且使用ld r24, X。我也嘗試使用GDB的print命令。但是,通過所有這些方法,我總是看到0的結果。 嘗試1:.data: Sections: Idx Name Size VMA LMA File off Algn 0 .data