i'm trying to cross-compile netsnmp 5.4.2 for running on an embedded system(mips).
由於我使用的cpu是little endian 交叉編譯工具是 mipsel-linux
如果你用的是big endian,交叉編譯用具就可能是 mips-linux
1. 設定環境變數::
toolchain=mipsel-linux-
cc=$gcc
cpp=$cpp
ar=$ar
strip=$strip
ranlib=$ranlib
ld=$ld
2. 編譯安裝::
../net-snmp-5.4.2.1/configure --build=i686-linux --host=mipsel-linux --target=mipsel-linux --with-transports="udp" --prefix=/opt/rootfs/snmp --with-endianness=little --with-persistent-directory=/var/net-snmp/ --with-default-snmp-version="2" --enable-mini-agent --without-kmem-usage --disable-debugging --disable-embedded-perl --without-perl-modules
make
make install
ps:1. 如果你採用的是 big endian, --with-endianness=little 應該改為 --with-endianness=big
2. 如果不想對openssl 的支援,用 --without-openssl
3. 測試::
border@ubuntu:/opt/rootfs/snmp/sbin$ pwd
/opt/rootfs/snmp/sbin
border@ubuntu:/opt/rootfs/snmp/sbin$ file snmpd
snmpd: elf 32-bit lsb executable, mips, version 1 (sysv), dynamically linked (uses shared libs), not stripped
border@ubuntu:/opt/rootfs/snmp/sbin$ file snmptrapd
snmptrapd: elf 32-bit lsb executable, mips, version 1 (sysv), dynamically linked (uses shared libs), not stripped
交叉編譯工具
準備工具和系統 arm linux gcc 4.4.3.tar.gz arm linux gcc 4.4.3 使用者名稱 www.linuxidc.com 密碼 www.muu.cc 在 2011年linuxidc.com 10月 android系統移植 建立arm linux交叉編譯環境 ubun...
交叉編譯工具
arm linux gcc c o led.o led.s arm linux ld ttext 0 led.o o led.elf arm linux objcopy o binary s led.elf led.bin arm linux objdump d led.elf led.disarm...
交叉編譯和交叉工具鏈(一)
一 交叉編譯簡介 1 什麼是交叉編譯 1.1 本地編譯 解釋什麼是交叉編譯之前,先要明白乙個概念 本地編譯 我們之前常見的軟體開發,都是屬於本地編譯 在當前的pc下,x86的cpu下,直接編譯出來程式,可以執行的程式 或者庫檔案 其可以直接在當前的環境,即x86的cpu下,當前電腦中,執行。此時的編...