色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 移植e2fsprogs到arm平臺

          移植e2fsprogs到arm平臺

          作者: 時間:2016-11-09 來源:網(wǎng)絡(luò) 收藏
          移植e2fsprogsarm平臺

          也就是一般的交叉編譯。

          本文引用地址:http://cafeforensic.com/article/201611/317677.htm

          由于e2fsprogs通常會用到動態(tài)庫,這里為了方便起見,采用了靜態(tài)鏈接。

          這樣的話,向arm平臺拷貝時,就不需要再關(guān)心動態(tài)庫的問題了。

          具體操作過程如下:

          tar -xzf e2fsprogs-1.42.5.tar.gz

          cd e2fsprogs-1.42.5

          mkdir release

          cd release/

          ../configure --host=arm-linux CC=arm-linux-gcc LDFLAGS=-static

          make

          好了,現(xiàn)在release下面的各個目錄下,已經(jīng)有相應(yīng)的可執(zhí)行程序生成了。

          將他們直接拷到arm平臺下即可使用了。

          當(dāng)然,如果單板flash空間緊張的話,則可以將部分功能編譯成動態(tài)庫。

          方法如下:

          ../configure --host=arm-linux CC=arm-linux-gcc --enable-elf-shlibs

          make

          好了,release下面的相應(yīng)子目錄中已經(jīng)生成了可執(zhí)行文件及動態(tài)庫。
          接下來要拷貝文件了。


          假如我們需要release/misc/mke2fs這個程序。
          那么首先用readelf看看mke2fs需要使用哪些動態(tài)庫。


          [root@localhost relaese]# readelf -d misc/mke2fs

          Dynamic section at offset 0x11474 contains 30 entries:
          Tag Type Name/Value
          0x00000001 (NEEDED) Shared library: [libext2fs.so.2]
          0x00000001 (NEEDED) Shared library: [libcom_err.so.2]
          0x00000001 (NEEDED) Shared library: [libblkid.so.1]
          0x00000001 (NEEDED) Shared library: [libuuid.so.1]
          0x00000001 (NEEDED) Shared library: [libe2p.so.2]
          0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
          0x00000001 (NEEDED) Shared library: [libc.so.0]

          可以看出一共需要7個庫。由于最后兩個是標準C庫,板子上本來就有。
          因此,我們只需要拷貝前5個即可。
          好了,我們先將release/lib目錄下對應(yīng)的5個動態(tài)庫拷貝到單板的/lib目錄下,
          然后將release/misc/mke2fs拷貝到單板的/sbin目錄下即可。



          關(guān)鍵詞: 移植e2fsprogsarm平

          評論


          技術(shù)專區(qū)

          關(guān)閉