GNU/Linux >> Znalost Linux >  >> Linux

Křížová kompilace pro router MIPS z x86

Podívejte se:

http://www.kegel.com/crosstool/

Je to autoritativní stránka pro křížovou kompilaci pod GCC.


Máte pravdu, potřebujete správný mips toolchain ke křížové kompilaci vaší aplikace a Buildroot to dokáže. Možná však budete muset upravit menuconfig v buildrootu možnosti.V závislosti na výstupu file , vaše možnosti se mohou změnit. V mém systému binární aplikace informují následující:

ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1 (SYSV)

Toto jsou možnosti, které jsem povolil pro můj Buildroot menuconfig:

Target Architecture (mips)  ---> 
Target Architecture Variant (mips 32r2)  --->                                                            
Target ABI (o32)  --->                                                                                   
Target options  --->                                                                                     
Build options  --->   
    (/opt/cross-mips-buildroot) Toolchain and header file location?                                                                                   
Toolchain  --->        
    Toolchain type (Buildroot toolchain)  ---> 
    Kernel Headers (Linux 2.6.34.x kernel headers)  --->
    uClibc C library Version (uClibc 0.9.31.x)  ---> 
    [*] Build/install a shared libgcc?
    [*] Enable compiler tls support       
    [*] Build gdb debugger for the Target
    [*] Build gdb server for the Target
    [*] Build gdb for the Host
        GDB debugger Version (gdb 6.8)  --->
    [*] Enable large file (files > 2 GB) support?
    [*] Enable WCHAR support
    [*] Use software floating point by default
    [*] Enable stack protection support
    [*] Build/install c++ compiler and libstdc++?
    [*] Include target utils in cross toolchain  
Package Selection for the target  --->   
    [*] BusyBox
    [*]   Run BusyBox's own full installation
    Libraries  ---> 
        Networking  ---> 
            [*] libcurl
        Text and terminal handling  ---> 
            [*] icu
            -*- ncurses    
Target filesystem options  --->                                                                          
Bootloaders  --->                                                                                        
Kernel  --->

Samotný toolchain je nainstalován na adrese /opt/cross-mips-buildroot . Kompilátor a další nástroje najdete na /opt/cross-mips-buildroot/usr/bin/

Zkuste sestavit jednoduchý ahoj světe a zjistěte, zda ji můžete spustit v systému mips.

Poznámka: tato konfigurace nevybuduje kompilátor C++. Pokud to potřebujete, můžete grep LIBSTDCPP .config a zkontrolujte, zda je povoleno nebo ne, a změňte jej podle svých představ. Potom make menuconfig aby se to stalo.


Linux
  1. Windows – laické vysvětlení pro „všechno je soubor“ – co se liší od Windows?

  2. Ubuntu 18.04 nerozpoznává názvy hostitelů ze směrovače?

  3. Kroky na vysoké úrovni pro migraci z webových služeb Amazon

  1. Jak zabránit tomu, aby ssh vyžadoval přístupovou frázi klíče pro přihlášení bez hesla

  2. Bash skript:Použití příkazu script z bash skriptu pro protokolování relace

  3. Jak vytvoříte seznam/soubor pro instalaci pacmana?

  1. Uniknout neznámým znakům z řetězce pro -exec?

  2. Čtení řádků ze souboru s Bash:For vs. Zatímco?

  3. Jak změnit pole Od:pro e-maily z Cronu?