龍芯LoongArch架構(gòu)進(jìn)入GNU Binutils主線
在Linux上進(jìn)行軟件開發(fā)時(shí),經(jīng)常會(huì)用到一些工具程序,比如readelf、ld、ar、objdum等,這些工具都是GNU Binutils的組成部分。目前GNU Binutils已經(jīng)把龍芯的LoongArch架構(gòu)加入了主線支持:

GNU Binutils,是 GNU Binary Utilities 的簡(jiǎn)寫,一般簡(jiǎn)稱為 Binutils,中文可以翻譯為 GNU 的二進(jìn)制工具集。顯然,Binutils 是一組二進(jìn)制工具的集合,也就是說,Binutils 不是指某一個(gè)工具,而是指一組工具,并且這些工具的操作對(duì)象都是二進(jìn)制文件。這些工具程序通常搭配GCC、make、和GDB這些程序來使用。
GNU Binutils是一系列二進(jìn)制工具的集合。主要包括:
ld —— GNU鏈接器
as—— GNU匯編器
但也包括以下二進(jìn)制工具:
addr2line:從目標(biāo)文件的虛擬地址獲取文件的行號(hào)或符號(hào)。
ar:可以對(duì)靜態(tài)庫(kù)做創(chuàng)建、修改和提取的操作。
c++filt:反編譯(反混淆,demangle)C++符號(hào)的工具。
dlltool:創(chuàng)建創(chuàng)建Windows動(dòng)態(tài)庫(kù)。
gold:另一種新的、更快的僅支持ELF的鏈接器。
gprof:性能分析(profiling)工具程序。
nlmconv:可以轉(zhuǎn)換成NetWare Loadable Module(NLM)目標(biāo)文件格式。
nm:顯示目標(biāo)文件內(nèi)的符號(hào)信息。
objcopy:復(fù)制和轉(zhuǎn)譯目標(biāo)文件。
objdump:顯示目標(biāo)文件的相關(guān)信息,亦可反匯編。
ranlib:產(chǎn)生靜態(tài)庫(kù)的索引。(和nm -s功能類似)
readelf: 顯示ELF文件的內(nèi)容。
size:列出目標(biāo)文件或庫(kù)文件的section大小。
strings:列出文件中可打印的字符串信息。
strip:從目標(biāo)文件中移除符號(hào)信息。
windmc:Windows消息資源編譯器。
windres:Windows資源文件編譯器。