Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
General
GeneralPortable MacsHardwareNetworking
Applications
Mac ApplicationsEudoraFirefox / MozillaInternet ExplorerOutlook ExpressMS OfficeEntourageExcelPowerPointWordVirtual PCMedia PlayerOther MS Products
Programming
Mac ProgrammingCodeWarriorPerl
Country Specific
Australian Mac GroupUK Mac Group

Mac Forum / Programming / Perl / September 2007



Tip: Looking for answers? Try searching our database.

unable to install Math::GMP

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Louis-Philippe - 05 Sep 2007 04:45 GMT
Hi,

I was on my way to install Net::SSH::Perl when an error with Math::GMP stopped me...
I then installed libgmp successfully, tried again... no luck.
then changed a couple of lines in Math::GMP Makefile.PL as written in this previous mailing :

http://www.nntp.perl.org/group/perl.macosx/2006/08/msg9995.html

no luck again...
when I compile I get this with the error:

env MACOSX_DEPLOYMENT_TARGET=10.3 cc  -L/opt/local/lib -bundle -undefined dynamic_lookup -L/usr/local/lib GMP.o  -o blib/arch/auto/Math/GMP/GMP.bundle  \
  -lgmp        \
 
/usr/bin/ld: /usr/local/lib/libgmp.a(mode1o.o) has local relocation entries in non-writable section (__TEXT,__text)
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/Math/GMP/GMP.bundle] Error 1

any IDEA?

l-p
Jeremiah Foster - 05 Sep 2007 10:15 GMT
> Hi,
>
[quoted text clipped - 16 lines]
> /usr/bin/ld: /usr/local/lib/libgmp.a(mode1o.o) has local relocation  
> entries in non-writable section (__TEXT,__text)

I think your error is here ^^ (the call to ld)

> collect2: ld returned 1 exit status
> make: *** [blib/arch/auto/Math/GMP/GMP.bundle] Error 1
>
> any IDEA?

You may want to check the ld documentation to see if you can find  
that error message.

Google produces some interesting output if you search on the ld error  
string. I think this link might offer some help: http://prlmnks.org/ 
html/543267.html

It unfortunately looks non-trivial.

> l-p

Jeremiah Foster
jeremiah@jeremiahfoster.com
---
Key fingerprint = 9616 2AD3 3AE0 502C BD75  65ED BDC3 0D44 2F5A E672
Louis-Philippe - 05 Sep 2007 20:17 GMT
Thanks Jeremiah,

that worked for the Math::GMP install
in fact, I used this post:

http://gmplib.org/list-archives/gmp-bugs/2006-July/000516.html

to get it solved.

but now... guess what?

Net::SSH::Perl still stops its install at the same spot it did before!!!

t/02-buffer......Can't locate Math/GMP.pm in @INC (@INC contains: /Users/leelasheel/.cpan/build/Net-SSH-Perl-1.30/blib/lib /Users/leelasheel/.cpan/build/Net-SSH-Perl-1.30/blib/arch /Users/leelasheel/.cpan/build/Crypt-Blowfish-2.10/blib/arch /Users/leelasheel/.cpan/build/Crypt-Blowfish-2.10/blib/lib /Users/leelasheel/.cpan/build/Digest-HMAC-1.01/blib/arch /Users/leelasheel/.cpan/build/Digest-HMAC-1.01/blib/lib /Users/leelasheel/.cpan/build/Crypt-DES-2.05/blib/arch /Users/leelasheel/.cpan/build/Crypt-DES-2.05/blib/lib /Users/leelasheel/.cpan/build/Digest-SHA1-2.11/blib/arch /Users/leelasheel/.cpan/build/Digest-SHA1-2.11/blib/lib /Users/leelasheel/.cpan/build/Crypt-CBC-2.22/blib/arch /Users/leelasheel/.cpan/build/Crypt-CBC-2.22/blib/lib /Users/leelasheel/.cpan/build/Class-Loader-2.03/blib/arch /Users/leelasheel/.cpan/build/Class-Loader-2.03/blib/lib /opt/local/lib/perl5/5.8.8/darwin-2level /opt/local/lib/perl5/5.8.8 /opt/local/lib/perl5/site_perl/5.8.8/darwin-2level /opt/local/lib/perl5/site_perl/5.8.8 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl/5.8.8/darwin-2level /opt/local/lib/perl5/vendor_perl/5.8.8 /opt/local/lib/perl5/vendor_perl .) at t/02-buffer.t line 9.
BEGIN failed--compilation aborted at t/02-buffer.t line 9.
# Looks like your test died before it could output anything.
t/02-buffer......dubious                                                    
       Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 1-19
       Failed 19/19 tests, 0.00% okay
t/03-packet......skipped
       all skipped: Can't do packet tests without String::CRC32
t/04-config......ok                                                          
t/05-cipher......ok                                                          
t/06-circular....ok                                                          
Failed Test   Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/02-buffer.t  255 65280    19   38 200.00%  1-19
1 test skipped.
Failed 1/6 test scripts, 83.33% okay. 19/94 subtests failed, 79.79% okay.
make: *** [test_dynamic] Error 255
 /usr/bin/make test -- NOT OK
Running make install
 make test had returned bad status, won't install without force
__________

anybody had this problem before?
I'm guessing it may have to do with my environment not being configured properly... but what is wrong? that is the question.

l-p

----jeremiah@jeremiahfoster.com wrote ----

On Sep 5, 2007, at 5:45 AM, Louis-Philippe wrote:

> Hi,
>
[quoted text clipped - 16 lines]
> /usr/bin/ld: /usr/local/lib/libgmp.a(mode1o.o) has local relocation  
> entries in non-writable section (__TEXT,__text)

I think your error is here ^^ (the call to ld)

> collect2: ld returned 1 exit status
> make: *** [blib/arch/auto/Math/GMP/GMP.bundle] Error 1
>
> any IDEA?

You may want to check the ld documentation to see if you can find  
that error message.

Google produces some interesting output if you search on the ld error  
string. I think this link might offer some help: http://prlmnks.org/ 
html/543267.html

It unfortunately looks non-trivial.

> l-p

Jeremiah Foster
jeremiah@jeremiahfoster.com
---
Key fingerprint = 9616 2AD3 3AE0 502C BD75  65ED BDC3 0D44 2F5A E672
Chas Owens - 05 Sep 2007 20:22 GMT
snip
> Net::SSH::Perl still stops its install at the same spot it did before!!!
>
> t/02-buffer......Can't locate Math/GMP.pm in @INC (@INC contains:
snip

can you say

perl -MMath::GMP -le 'print "ok"'

If not then you need to add the directory you installed Math::GMP into
to the PERL5LIB environmental variable
Louis-Philippe - 05 Sep 2007 20:25 GMT
here is what it does:

-bash-2.05b$ perl -MMath::GMP -e 'print "ok"'
ok-bash-2.05b$

l-p

----chas.owens@gmail.com wrote ----

On 9/5/07, Louis-Philippe <l0u1sph1l1ppe@spiraliens.org> wrote:
snip
> Net::SSH::Perl still stops its install at the same spot it did before!!!
>
> t/02-buffer......Can't locate Math/GMP.pm in @INC (@INC contains:
snip

can you say

perl -MMath::GMP -le 'print "ok"'

If not then you need to add the directory you installed Math::GMP into
to the PERL5LIB environmental variable
Chas Owens - 05 Sep 2007 20:34 GMT
> here is what it does:
>
> -bash-2.05b$ perl -MMath::GMP -e 'print "ok"'
> ok-bash-2.05b$

If you had included the -l along with the -e it would have made more
sense, but that means perl can find Math::GMP (it would have thrown an
error otherwise).  Are you running make by hand or through cpan?
Also, do you have fink, portage, etc. installed?  It is possible you
are using two different Perl interpreters (one which can find the
module and one that can't).
Louis-Philippe - 05 Sep 2007 20:39 GMT
I tried both fink & macports in the past...
but I don't use any right now, and they left lots of trace in my system...
how would I know if my thing is wrecked?

l-p

----chas.owens@gmail.com wrote ----

On 9/5/07, Louis-Philippe <l0u1sph1l1ppe@spiraliens.org> wrote:
> here is what it does:
>
> -bash-2.05b$ perl -MMath::GMP -e 'print "ok"'
> ok-bash-2.05b$

If you had included the -l along with the -e it would have made more
sense, but that means perl can find Math::GMP (it would have thrown an
error otherwise).  Are you running make by hand or through cpan?
Also, do you have fink, portage, etc. installed?  It is possible you
are using two different Perl interpreters (one which can find the
module and one that can't).
Chas Owens - 05 Sep 2007 20:45 GMT
> I tried both fink & macports in the past...
> but I don't use any right now, and they left lots of trace in my system...
> how would I know if my thing is wrecked?
snip

Not quite sure, the first thing I would do is say

which perl

to see which one is being used by the shell (it should be
/usr/bin/perl if I remember correctly).  Then I would check to see if
there is a perl interpreter installed in /usr/local, /opt, or /sw

find /usr/local /opt /sw -name perl

But I am really just shooting in the dark.  I am currently in Linux
(and will be for the next few hours), but when I get home I will boot
in Mac OS X and see if I can duplicate your problem (I believe I have
Fink installed).
Louis-Philippe - 05 Sep 2007 20:52 GMT
ok so I tried something:

-bash-2.05b$ /usr/bin/perl -MMath::GMP -le 'print "ok"'
Can't locate Math/GMP.pm in @INC (@INC contains: /usr/local/lib/perl5/ /usr/local/lib/perl5/site_perl/ /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 .).
BEGIN failed--compilation aborted.
-bash-2.05b$

so I know this one doesn't...

and

-bash-2.05b$ /opt/local/bin/perl -MMath::GMP -le 'print "ok"'
ok

means this one has it...

so what do I need to do now to stop this double life?

l-p

----chas.owens@gmail.com wrote ----

On 9/5/07, Louis-Philippe <l0u1sph1l1ppe@spiraliens.org> wrote:
> I tried both fink & macports in the past...
> but I don't use any right now, and they left lots of trace in my system...
> how would I know if my thing is wrecked?
snip

Not quite sure, the first thing I would do is say

which perl

to see which one is being used by the shell (it should be
/usr/bin/perl if I remember correctly).  Then I would check to see if
there is a perl interpreter installed in /usr/local, /opt, or /sw

find /usr/local /opt /sw -name perl

But I am really just shooting in the dark.  I am currently in Linux
(and will be for the next few hours), but when I get home I will boot
in Mac OS X and see if I can duplicate your problem (I believe I have
Fink installed).
Chas Owens - 05 Sep 2007 21:02 GMT
> ok so I tried something:
>
> -bash-2.05b$ /usr/bin/perl -MMath::GMP -le 'print "ok"'
> Can't locate Math/GMP.pm in @INC (@INC contains: /usr/local/lib/perl5/
snip
> -bash-2.05b$ /opt/local/bin/perl -MMath::GMP -le 'print "ok"'
> ok
snip

Ok, so this means my shot in the dark multiple interpreter theory is
confirmed.  One way to make sure the official (i.e. Apple built)
interpreter is found first is to make sure /usr/bin is first in your
PATH.  You could also say

/usr/bin/perl -MCPAN -e install Net::SSH::Perl

to ensure that it is building the modules for the interpreter in
/usr/bin (or replace /usr/bin with /opt/local/bin if you want to use
that one instead).

Personally I would try to get rid of the extra interpreters.  They
will undoubtedly confuse you again in the future (this is also what I
don't like the #!/usr/bin/env perl shebang line, it is just plain
confusing).
Louis-Philippe - 05 Sep 2007 20:33 GMT
so more like:

-bash-2.05b$ perl -MMath::GMP -le 'print "ok"'
ok

l-p

----chas.owens@gmail.com wrote ----

On 9/5/07, Louis-Philippe <l0u1sph1l1ppe@spiraliens.org> wrote:
snip
> Net::SSH::Perl still stops its install at the same spot it did before!!!
>
> t/02-buffer......Can't locate Math/GMP.pm in @INC (@INC contains:
snip

can you say

perl -MMath::GMP -le 'print "ok"'

If not then you need to add the directory you installed Math::GMP into
to the PERL5LIB environmental variable
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.