2016-07-13 16 views
1

Ich möchte eine App in einer MIPS-Architektur (BCM6358) ausführen. Ich habe ein „Hallo Welt“ App wie diese entwickelt:Cross-Compilation für MIPS-Architektur

#include <stdio.h> 
int main() 
{ 
    printf("Hello World") ; 
    return 0  ; 
} 

Ich habe es auch so zusammengestellt:

# mips-linux-gnu-gcc -muclibc hallo.c 

Aber wenn ich laufen habe ... es funktioniert nicht:

Natürlich ist libc.so.6 nicht in der MIPS-Box vorhanden, aber libc.so.0 tut es.

Ich habe auch es wie folgt zusammengestellt:

# mips-linux-gnu-gcc -muclibc -mips32 -EB hallo.c -o hallo 

jedoch der Ausgang gleich ist.

Ich weiß nicht, ob "-muclibc" gut funktioniert, weil ich in meinem Ubuntu-Rechner nichts über libc.so.0 und weder uclibc finde.

[email protected]:/# find/-name libc.so.* -print 
/usr/mips-linux-gnu/lib/libc.so.6 
/lib/i386-linux-gnu/libc.so.6 
/lib/x86_64-linux-gnu/libc.so.6 
[email protected]:/# find/-name *uclib* -print 

Irgendeine Idee?

Danke, mit freundlichen Grüßen.

+0

Was soll 'muclibc' tun? Hat Ihr MIPS-Ziel eine libc.so? – markgz

Antwort

0

Ja, das MIPS Ziel eine libc.so und wie:

libc.so.6 != uClibc 
libc.so.6 == glibc 
libc.so.0 == uClibc 

ich kompilieren mit -muclibc.

Allerdings habe ich es !!! weeeeellll !!

Was ich getan habe ist eine alte CODESOURCERY und kompilieren Sie es mit statischer Bibliothek wie diese zu installieren:

# mips-linux-gnu-gcc -muclibc -mips32 -EB -static hallo.c -o hallo 

Vielen Dank Mit freundlichen Grüßen.

Verwandte Themen