2017-06-12 3 views
1

Also, ich hatte die Aufgabe, unser yocto basiertes System von fido auf morty zu verbessern. Ich habe sehr wenig Erfahrung mit yocto, ich habe mit ihm gekämpft und versuche es seit fast einer Woche zu verstehen. Ich habe es geschaffen, einige Probleme zu beheben, aber jetzt bin ich vor einem Problem bei dem Versuch, das Bild zu bauen:Yocto fido -> morty update dnsmasq KEIN GNU_HASH

dnsmasq-2.68-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/oe/.../dnsmasq/2.68-r0/packages-split/dnsmasq/usr/bin/dnsmasq' 

ich online nach einer Lösung gesucht haben und ich einen Weg, um den Fehler zu unterdrücken, indem die Zugabe fand:

INSANE_SKIP_${PN} = "ldflags" 

im Rezept.

Aber ich glaube nicht, dass dies der "richtige" Weg ist, es zu tun, und ich hatte es auf einem anderen Rezept, das das gleiche Problem hatte. Ich fand auch, dass jemand ähnliche Probleme hatte und Pakete neu arrangieren, aber ich weiß nicht, wie ich das machen soll.

Also meine Frage ist: Ist es eine schlechte Idee, nur den insane_skip zu allen Rezepten hinzuzufügen, die dieses Problem haben, und wenn ja, wie kann es behoben werden?

Antwort

2

Sie würden wahrscheinlich von einem Blick auf die dnsmasq Rezept in meta-oe profitieren.

Ihr Problem ist, dass dnsmasq nicht die Variable LDFLAGS aus der Box respektieren. Versuchen Sie Folgendes hinzuzufügen:

EXTRA_OEMAKE_append = " 'LDFLAGS=${LDFLAGS}'" 

zu Ihrem Rezept. (Siehe das Rezept in der verknüpften URL).

+0

Das hat den Trick, danke. Aber warum ist das jetzt ein Thema, als ich nach Morty gezogen bin, aber kein Problem in Fido? –

+0

Wenn Sie die Entwicklungszyklen nicht genau verfolgt haben, lesen Sie immer den Migrationsleitfaden im Yocto Project Reference Manual. Diese spezielle Änderung ist in http://www.yoctoproject.org/docs/2.2.1/ref-manual/ref-manual.html#migration-2.2-default-linker-hash-style-changed enthalten. – Anders