cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory
Habe ich einen cross-compiler in meinem home-Ordner auf Ubuntu 13.10 (64-bit). Ich habe es runtergeladen hier am unteren Rand der Seite, wo es sagt "Vorkompilierte Toolchains". Wenn ich versuche zu kompilieren etwas, es gibt mir diese:
cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory
Nach goggling ein wenig fand ich diese. Ich habe versucht die Befehle, die der Autor geschrieben hat, zu geben; aber Sie helfen mir nicht, da habe ich dieses problem mit einem cross-compiler aus dem Haus Wörterbuch, nicht den compiler des Systems. Kann mir jemand helfen?
EDIT: Hier ist die Datei, die ich versuche zu cross-kompilieren:
void print(char *message, int line,int ch){
char *vm=(char *)0xb8000;
int i=(line*80*2);
i=i+(ch*2);
while(*message!=0){
if (*message=='\n'){line++;
i=(line*80*2);}
else {vm[i]=*message;
i++;
vm[i]=0x07;
i++;} *message++;}}
void kernel_main(){
print("Hello!\nHow do you like my kernel?",0,0);}
Ich habe auch eine assembly-Datei geschrieben in AT&T-syntax, die Anrufe kernel_main().
- Können Sie bitte genauer erläutern? Die cross-compiler, welchen Befehl Sie verwenden, was für ein system Sie auf, etc.
- Ich habe gerade heruntergeladen ein weiteres cross-compiler aus dem gleichen Ort ein, tut es die gleiche Sache. Sollte ich versuchen, Fedora statt auf Ubuntu? Oder ist das nur weired?
- Ich habe gerade versucht es auf Fedora und es hat nicht funktioniert entweder. Kann jemand versuchen, die i386-elf cross-compiler aus os-dev.org auf Ihre hardware? Vielleicht ist es nur mein computer, der dieses problem hat aus irgendeinem Grund.
- Ich heruntergeladen zwei weitere cross-Compiler aus OS-dev.org und Sie haben das gleiche problem. Ich bin offensichtlich etwas falsch.
- U kann mir sagen, was versuchen Sie zu cross-kompilieren?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mein Fehler verschwunden, nachdem ich die hatte, hat die folgenden Befehle:
ldconfig
ist die Magie.Könnte, finden Sie libmpc.so.3 in /usr/lib oder /usr/lib64? Wenn du es gefunden oder die gleiche Sache, die Sie benötigen, ersetzen Sie es mit libmpc.so.- 2-Datei. Diese Datei finden kann, in verschiedenen Linux-version niedriger.
version 2 libmpc (d.h. libmpc.2.dynlib) ist das erstellen von Versionen 0.7 - 0.9 von der Quelle (den download-Archiven bei http://www.multiprecision.org). Versionen, die älter als 0,9 zu sein scheinen unvereinbar mit den neueren Versionen GMP also ich würd versuchen Sie, ein Gebäude, dass einer der ersten. Ich war in der Lage, erstellen und verwenden von 0.9 auf meinem OsX El Capitan-system nach der Installation von gcc 4.8, gmp und mpfr:
Dann in die mpc-0.9 Verzeichnis:
Ich gelöst
cc1: error while loading shared libraries: libmpc.so.2
wie folgt:Installieren
libmpc3
über repo-und machen symlink (dirty Methode, aber funktioniert):oder (wenn toolchain für i386):
in
/usr/lib/i386-linux-gnu
für i386 oder in/usr/lib/x86_64-linux-gnu
für amd64: