Frage

Wenn ein Modul ExtUtils Perl Aufbau :: Makemaker verwendet die definierten Flags in Config.pm (siehe perldoc Config) für Werte wie ccflags und ldflags.

Wie überschreiben ich Thesen Werte (kurz die Makefile.PL der Bearbeitung)?

perl Makefile.PL ldflags=<options> 

scheint nicht zu arbeiten.

Kontext: Ich versuche Term :: Readline :: Gnu auf OS X 10.6 zu kompilieren. Das Standard-OS X Perl ist eine Universal Binary und hat somit ccflags wie -arch i386 -arch ppc usw.
Auf der anderen Seite meiner Version von Gnu Readline (6.0) von der Quelle wurde nur für -arch i386 zusammengestellt. Als solches enthält es nicht die erwarteten Symbole für ein Modul zur Link, um es mit -arch ppc versuchen.

War es hilfreich?

Lösung

In der Regel die Einstellungen in Config.pm außer Kraft zu setzen versucht, ist eine Übung in Sinnlosigkeit. Je mehr normale Grund für den Wunsch, sie zu ändern ist, den Compiler auf einer Maschine zu ändern, in dem Perl mit einem nicht-GNU-Compiler kompiliert wurde, aber Sie wollen GCC verwenden. Das ist so schwer zu tun, dass es bei weitem einfacher ist Perl mit dem gewählten Compiler neu zu erstellen, wird alle Hilfs Module installieren und dann den gewünschten neuen Modul anstatt zu versuchen, ‚das System‘ zu bekämpfen verwenden bauen.

Sie können also tun, eines von zwei Dingen - Ihr GNU Readline-Bibliothek mit den gleichen Optionen bauen, dass Perl verwenden würde, oder bauen Sie Ihre Perl mit den Optionen verwendeten GNU Readline aufzubauen. Der Versuch, ein zu biegen, um die andere zu treffen ist nicht zu empfehlen, wenn Sie Ihre Maschine und die Haare auf dem Kopf-Wert (bitte schlug die Maschine nicht so schwer - es ist die Software sollten Sie frustriert sein, nicht die Hardware, Mac ist schön !).

Von den beiden Möglichkeiten, den Wiederaufbau GNU Readline ist wahrscheinlich die einfachere -. Es ist kleiner und hat weniger Add-ons

Andere Tipps

zur Verfügung Information in der Hintsfile Unterstützung Abschnitt der docs könnte sein, relevant, obwohl ich es nicht versucht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top