Home > Archive > PERL Miscellaneous > September 2006 > failure to build perl 5.8.8
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
failure to build perl 5.8.8
|
|
| David Bear 2006-09-28, 6:59 pm |
| I am using Suse Linux 9.3. Perl 5.8.6 is the version of perl installed.
However, I have some perl code that a vender gave me that they insist only
works with perl 5.8.8. So i went to install a separate instance of perl. I
changed the prefix to be /work/servers/webenv and ran make. Make bombed
with the error:
`sh cflags "optimize='-O2'" opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
CCCMD = cc -DPERL_CORE -c -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -Wall
cc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.a
libperl.a(pp.o)(.text+0x9033): In function `Perl_pp_int':
pp.c: undefined reference to `floor'
libperl.a(pp.o)(.text+0x9049):pp.c: undefined reference to `ceil'
libperl.a(pp.o)(.text+0x91ea): In function `Perl_pp_sqrt':
pp.c: undefined reference to `sqrt'
libperl.a(pp.o)(.text+0x929b): In function `Perl_pp_log':
pp.c: undefined reference to `log'
libperl.a(pp.o)(.text+0x93d9): In function `Perl_pp_exp':
pp.c: undefined reference to `exp'
libperl.a(pp.o)(.text+0x9439):pp.c: undefined reference to `exp'
libperl.a(pp.o)(.text+0x9799): In function `Perl_pp_cos':
pp.c: undefined reference to `cos'
libperl.a(pp.o)(.text+0x97f9):pp.c: undefined reference to `cos'
libperl.a(pp.o)(.text+0x98f9): In function `Perl_pp_sin':
pp.c: undefined reference to `sin'
libperl.a(pp.o)(.text+0x9959):pp.c: undefined reference to `sin'
libperl.a(pp.o)(.text+0x9b03): In function `Perl_pp_atan2':
pp.c: undefined reference to `atan2'
libperl.a(pp.o)(.text+0xbc60): In function `Perl_pp_modulo':
pp.c: undefined reference to `floor'
libperl.a(pp.o)(.text+0xbc94):pp.c: undefined reference to `floor'
libperl.a(pp.o)(.text+0xbd42):pp.c: undefined reference to `fmod'
libperl.a(pp.o)(.text+0xc2fc): In function `Perl_pp_pow':
pp.c: undefined reference to `pow'
libperl.a(pp_pack.o)(.text+0x207b): In function `S_pack_rec':
pp_pack.c: undefined reference to `floor'
libperl.a(pp_pack.o)(.text+0x20a6):pp_pack.c: undefined reference to `floor'
collect2: ld returned 1 exit status
make: *** [miniperl] Error 1
googling for this yeilds about 65000 hits, so I am hoping someone here might
have seen this and can tell me what might be the issue.
Any pointers? (I mean advice)
--
David Bear
-- let me buy your intellectual property, I want to own your thoughts --
| |
| Sherm Pendley 2006-09-28, 6:59 pm |
| David Bear <david.bear@asu.edu> writes:
> I am using Suse Linux 9.3. Perl 5.8.6 is the version of perl installed.
> However, I have some perl code that a vender gave me that they insist only
> works with perl 5.8.8.
I'd verify their claim. "Not supported" doesn't necessarily mean "Doesn't
work" - quite often it simply means that the supported configurations are
the only ones the vendor has tested.
> changed the prefix to be /work/servers/webenv and ran make. Make bombed
> with the error:
>
> `sh cflags "optimize='-O2'" opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
> CCCMD = cc -DPERL_CORE -c -fno-strict-aliasing -pipe
> -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -Wall
> cc -L/usr/local/lib -o miniperl \
> miniperlmain.o opmini.o libperl.a
> libperl.a(pp.o)(.text+0x9033): In function `Perl_pp_int':
> pp.c: undefined reference to `floor'
Floor() and the other functions you're missing are all in libm, so add "-lm"
to the linker flags.
sherm--
--
Web Hosting by West Virginians, for West Virginians: http://wv-www.net
Cocoa programming in Perl: http://camelbones.sourceforge.net
| |
| David Bear 2006-09-29, 6:59 pm |
| Sherm Pendley wrote:
> David Bear <david.bear@asu.edu> writes:
>
>
> I'd verify their claim. "Not supported" doesn't necessarily mean "Doesn't
> work" - quite often it simply means that the supported configurations are
> the only ones the vendor has tested.
>
This is exactly what I am trying to do. Their pm doesn't work generating a
crypto-hash. I've sent their pm back to them and they insist it works for
them on perl 5.8.8 - I have no choice but to install v 5.8.8 and see. I
think they are lying to me.
>
> Floor() and the other functions you're missing are all in libm, so add
> "-lm" to the linker flags.
Can I do this in the Configure script with -Dlm ?
>
> sherm--
>
--
David Bear
-- let me buy your intellectual property, I want to own your thoughts --
| |
| Sherm Pendley 2006-09-29, 6:59 pm |
| David Bear <david.bear@asu.edu> writes:
> Sherm Pendley wrote:
>
>
> Can I do this in the Configure script with -Dlm ?
Close, but not quite. :-) It's -Dldflags=-lm
It's kind of odd that Configure didn't pick that up automagically - you might
want to verify that you actually do have either libm.so or libm.a installed -
it's a system library, so you should find it in /usr/lib.
If SuSE uses a static libm, then it might be in a -dev package that isn't
installed on your system.
sherm--
--
Web Hosting by West Virginians, for West Virginians: http://wv-www.net
Cocoa programming in Perl: http://camelbones.sourceforge.net
| |
| David Bear 2006-09-29, 6:59 pm |
| Sherm Pendley wrote:
> David Bear <david.bear@asu.edu> writes:
>
>
> Close, but not quite. :-) It's -Dldflags=-lm
>
> It's kind of odd that Configure didn't pick that up automagically - you
> might want to verify that you actually do have either libm.so or libm.a
> installed - it's a system library, so you should find it in /usr/lib.
>
> If SuSE uses a static libm, then it might be in a -dev package that isn't
> installed on your system.
>
I did the interactive configure again, paying close attention to questions
dealing with link flags. I had to include /usr/lib64 in one of the question
(I forgot which) but after that make and make test ran spendid. Must be a
Suse thing with mixed 32/64 bit libraries?
> sherm--
>
--
David Bear
-- let me buy your intellectual property, I want to own your thoughts --
|
|
|
|
|