From: Janne Snabb on 19 Jul 2010 02:59 On Mon, 19 Jul 2010, Christopher Key wrote: > Simple solution, there was a missing -lpthread, patch available from: > > http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/148648 Hehe... I completely overlooked this possibility. I sent a follow-up to perl5-porters quoting your message. > For some reason, linking binaries without -lpthread succeeds, but the > pthread calls in the resulting binary do nothing. Odd. I wonder what is the justification for this behaviour, if any... -- Janne Snabb / EPIPE Communications snabb(a)epipe.com - http://epipe.com/ _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
From: "Scott Sanbeg" on 20 Jul 2010 10:37 The patch could possibly solve my challenge, but if it works then why do I get this? root(a)anchorage:/usr/ports/lang/perl5.12# patch < my.patch Hmm... Looks like a unified diff to me... The text leading up to this was: -------------------------- |--- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 |+++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 -------------------------- Patching file files/patch-freebsd.sh using Plan A... patch: **** malformed patch at line 8: @@ -88,6 +88,8 @@ Scott -----Original Message----- From: owner-freebsd-ports(a)freebsd.org [mailto:owner-freebsd-ports(a)freebsd.org] On Behalf Of Christopher Key Sent: Sunday, July 18, 2010 8:46 PM To: ports(a)freebsd.org Subject: Re: lang/perl5.12 segfault (amd64 - 8-STABLE) cjk32(a)cam.ac.uk wrote: > Someone who understands the perl threading internals needs to figure > this out. > > Simple solution, there was a missing -lpthread, patch available from: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/148648 For some reason, linking binaries without -lpthread succeeds, but the pthread calls in the resulting binary do nothing. #v+ # cat pthread.c #include <stdio.h> #include <stdlib.h> #include <pthread.h> int main(void) { int i; pthread_key_t k; k = 1234; i = pthread_key_create(&k, NULL); fprintf(stderr, "%d %d\n", i, (int) k); return 0; } # gcc pthread.c -o pt1 # gcc pthread.c -lpthread -o pt2 # ./pt1 0 1234 # ./pt2 0 0 #v- _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org" _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
From: Christopher Key on 20 Jul 2010 11:46 Scott Sanbeg wrote: > The patch could possibly solve my challenge, but if it works then why do I > get this? > > root(a)anchorage:/usr/ports/lang/perl5.12# patch < my.patch > Hmm... Looks like a unified diff to me... > The text leading up to this was: > -------------------------- > |--- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 > |+++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 > -------------------------- > Patching file files/patch-freebsd.sh using Plan A... > patch: **** malformed patch at line 8: @@ -88,6 +88,8 @@ > > I guess that the patch is getting munged somewhere; I'm not sure why its ended up inline in the pr rather than available to download. Try the attached. Chris.
From: Gary Jennejohn on 20 Jul 2010 11:54 On Tue, 20 Jul 2010 07:37:37 -0700 "Scott Sanbeg" <ssanbeg(a)gmail.com> wrote: > The patch could possibly solve my challenge, but if it works then why do I > get this? > > root(a)anchorage:/usr/ports/lang/perl5.12# patch < my.patch > Hmm... Looks like a unified diff to me... > The text leading up to this was: > -------------------------- > |--- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 > |+++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 > -------------------------- > Patching file files/patch-freebsd.sh using Plan A... > patch: **** malformed patch at line 8: @@ -88,6 +88,8 @@ > Works for me. Did you perhaps edit it and make an error? You can always apply it by hand, it's not all that complex. -- Gary Jennejohn _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
From: "Scott Sanbeg" on 20 Jul 2010 15:44 Chris - thank you for the attachment - using it succeeded and perl 5.12 has also been successfully built. Gary - no edits, no. However, using Chris's attachment as 'my.patch' and the previous copy and paste from the inline code of ports/148648 as 'my.patch.old' for the diff run, below, you'll see that the two are obviously different. I am using Google Chrome for a browser, so the extra white space, etc, may be due to it, or to the ports site and how it is storing the individual character bits. root(a)anchorage:/usr/ports/lang/perl5.12# diff my.patch my.patch.old 1,2c1,2 < --- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 < +++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 --- > --- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 > +++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 6,10c6,10 < +--- ./hints/freebsd.sh.orig 2010-05-07 14:34:10.000000000 +0100 < ++++ ./hints/freebsd.sh 2010-07-16 21:43:38.000000000 +0100 < @@ -88,6 +88,8 @@ < esac < libswanted=`echo $libswanted | sed 's/ malloc / /'` --- > +--- ./hints/freebsd.sh.orig 2010-05-07 14:34:10.000000000 +0100 > ++++ ./hints/freebsd.sh 2010-07-16 21:43:38.000000000 +0100 > @@ -88,6 +88,8 @@ > esac > libswanted=`echo $libswanted | sed 's/ malloc / /'` 12,14c12,14 < lddlflags="-shared " < fi < cccdlflags='-DPIC -fPIC' --- > lddlflags="-shared " > fi > cccdlflags='-DPIC -fPIC' 18,24c18,24 < + libpth="/usr/lib /usr/local/lib" < + glibpth="/usr/lib /usr/local/lib" < +- ldflags="-Wl,-E " < ++ ldflags="%%PTHREAD_LIBS%% -Wl,-E " < + lddlflags="-shared " < + cccdlflags='-DPIC -fPIC' < + ;; --- > + libpth="/usr/lib /usr/local/lib" > + glibpth="/usr/lib /usr/local/lib" > +- ldflags="-Wl,-E " > ++ ldflags="%%PTHREAD_LIBS%% -Wl,-E " > + lddlflags="-shared " > + cccdlflags='-DPIC -fPIC' > + ;; 26c26 < 0*|1*|2*|3*) ;; --- > 0*|1*|2*|3*) ;; 28c28 < *) --- > *) 30,32c30,32 < if /usr/bin/file -L /usr/lib/libc.so | /usr/bin/grep -vq "not stripped" ; then < usenm=false < fi --- > if /usr/bin/file -L /usr/lib/libc.so | /usr/bin/grep -vq "not stripped" ; then > usenm=false > fi 36,37c36,37 < # This script UU/usethreads.cbu will get 'called-back' by Configure < # after it has prompted the user for whether to use threads. --- > # This script UU/usethreads.cbu will get 'called-back' by Configure > # after it has prompted the user for whether to use threads. Scott -----Original Message----- From: Christopher Key [mailto:cjk32(a)cam.ac.uk] Sent: Tuesday, July 20, 2010 8:47 AM To: Scott Sanbeg Cc: ports(a)freebsd.org Subject: Re: lang/perl5.12 segfault (amd64 - 8-STABLE) Scott Sanbeg wrote: > The patch could possibly solve my challenge, but if it works then why do I > get this? > > root(a)anchorage:/usr/ports/lang/perl5.12# patch < my.patch > Hmm... Looks like a unified diff to me... > The text leading up to this was: > -------------------------- > |--- files/patch-freebsd.sh 2009-01-13 21:38:50.000000000 +0000 > |+++ files/patch-freebsd.sh 2010-07-16 21:46:31.000000000 +0100 > -------------------------- > Patching file files/patch-freebsd.sh using Plan A... > patch: **** malformed patch at line 8: @@ -88,6 +88,8 @@ > > I guess that the patch is getting munged somewhere; I'm not sure why its ended up inline in the pr rather than available to download. Try the attached. Chris. _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 Prev: FreeBSD Port: nss-pam-ldapd-0.7.7 Next: General note on rc scripts and daemonizing |