Frage

Ich versuche, Perl 5.10 auf meinem FreeBSD 7.1 (BSD) Server zu kompilieren, aber wenn ich das Configure-Skript ausführen und beantworten Sie die Fragen, die ich die folgende Fehlermeldung erhalten:

...POSTIX threads should be supported by FreeBSD 7.1 ... but your system is missing the shared libc_r.

Googeln für die Antwort kam mit gethostnamadr.c Installation, die bis auf zwei Dinge in Ordnung ist:

  1. Ich weiß nicht, wo diese Datei zu setzen und
  2. Wie funktioniert das mein Problem lösen, wenn Configure will libc_r sehen?
War es hilfreich?

Lösung

Um Perl 5.10 Threads auf FreeBSD zu ermöglichen 7. * alles, was Sie tun müssen, ist die folgende Patch anwenden patch verwenden. Anschließend können Sie Perl mit -Dusethreads bauen oder die Configure Datei Fragen beantworten Threading zu aktivieren und Sie sind gut zu gehen. Ich habe keine signifikanten Tests oder Vergleiche getan noch, aber alles kompiliert fein einschließlich der Thread-Libs und alle meine Perl-Programme funktionieren.

--- hints/freebsd.sh 2008/10/20 04:59:30 1.1
+++ hints/freebsd.sh 2008/10/20 22:49:29
@@ -211,6 +211,14 @@
exit 1
;;

+ 7.*)
+ # 7.x doesn't install libc_r by default, and Configure
+ # would fail in the code following
+ #
+ # gethostbyaddr_r() appears to have been implemented in 6.x+
+ ldflags="-pthread $ldflags"
+ ;;
+
*)
if [ ! -r "$lc_r" ]; then
cat <<EOM >&4 

EDIT: Ich habe meine Referenz; Check hier für weitere Informationen: http: // www. gossamer-threads.com/lists/perl/porters/232518?nohighlight=1#232518 .

Andere Tipps

Im Gegensatz zu Spolsky, der sagte, „perl so ziemlich vergessen“ ... Perl ist sehr lebendig.

Sie haben nicht angegeben, welche Version von FreeBSD haben Sie installiert ... Aber davon aus, dass Sie eine Minute von FreeBSD 7.1 installiert haben, dann scheiterte man die Fäden Bibliotheken oder die Fäden Libs zu installieren sind nicht im Bibliothekspfad.

Hinweis, dass libc eine allgemeine ‚c‘ Bibliothek ist und dass libc_r ist der Thread-sichere Version der Datei. Einige der 2005 Google Ergebnisse deuten darauf hin, dass libc_r ist veraltet.

, die mit im Auge ist es wahrscheinlich, dass Sie in der Mitte einer „Revision Kollision“ sind. Leider FreeBSD bietet keine Thread-sicher-Version von Perl-nativ, aber sie tun Paket perl 5.10 und mehrere spätere Revisionen. Ich fand diesen Link nützlich sein:

http://www.nabble.com/How---where-to-get-a-Perl-that-has-threads--td22270858.html

Sie können auch versuchen wollen die p5-fork Bibliothek zu installieren, die mit FreeBSD enthalten ist

http://www.nabble.com/How---where-to-get-a-Perl-that-has-threads--td22270858.html

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