ld: bibliothèque introuvable -lcrt0.o sur OSX 10.6 avec gcc / clang-drapeau statique
Quand j'essaie de compiler le programme suivant:
#include <stdio.h>
int main(void)
{
printf("hello worldn");
return 0;
}
Sur OS X 10.6.4, avec les options suivantes:
gcc -static -o blah blah.c
Elle retourne ceci:
ld: library not found for -lcrt0.o
collect2: ld returned 1 exit status
quelqu'un d'autre A rencontré ce problème, ou est-ce quelque chose que personne d'autre n'a été touché avec encore? Toutes les corrections?
Merci
2 réponses
ça ne marchera pas. À partir de la man
page gcc
:
cette option ne fonctionnera pas sur Mac OS X à moins que toutes les bibliothèques (y compris libgcc.a) ont également été compilés avec-static. Depuis ni une version statique de libSystem.dylib ni crt0.o sont fournis, cette option n'est pas utile pour la plupart des gens.
Vous pouvez également essayer de LLVM LLD de l'éditeur de liens - je n'ai prédéfinis version pour mes deux principaux Systèmes d'exploitation - https://github.com/VerKnowSys/Sofin-llds
celui - ci me permet de lier par exemple: "Qemu" correctement-ce qui est impossible avec ld préinstallé par Apple.
Et dernière question est - à construire GCC-vous avec libstdc++ (ne pas).