2017-03-01 4 views
0

Je dois construire ld à partir de sources sur OSX 10.12.3 (16D32). Je cloné la dernière version de git: //sourceware.org/git/binutils-gdb.git et essayé de le construire:impossible de construire binutils sur macosx

./configure --prefix=/usr --disable-werror (there are a lot of warnings, so I disable them) 

make 

mais je suis

In file included from dwarf2read.c:72: 
./common/gdb_unlinker.h:35:35: error: '__nonnull__' attribute 
is invalid for the implicit this argument 
    unlinker (const char *filename) ATTRIBUTE_NONNULL (1) 

Avez-vu personne et savoir comment le réparer? J'ai besoin que ld pour vérifier pourquoi il montre

ld: warning: can't parse dwarf compilation unit info in 

sur OSX, quand Ubuntu fonctionne très bien et objdump ne montre aucun symbole elfe.

Merci pour votre aide.

+0

Je suis un peu confus par cette question. L'éditeur de liens qui fait partie des outils de développement d'Apple est le 'ld64' d'Apple, pas' ld' de GNU binutils. Vous pouvez voir le message d'erreur que vous référencez dans [source d'Apple pour 'ld64'] (https://opensource.apple.com/source/ld64/ld64-274.2/src/ld/parsers/macho_relocatable_file.cpp.auto.html) (dans 'Parser :: parseDebugInfo'). – bdash

+0

J'ai compris. Vous avez raison, j'ai été confondu par le nom de LD. ld -v montre que c'est ld64 qui peut être construit. –

Répondre

0

J'essayais de construire mal ld. ld -v @ (#) PROGRAMME: ld PROJET: ld64-274.2 montre que j'ai dû construire ld64 à partir de sources Apple. Merci bdash pour le pointage.