Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[BUG] parrot 0.4.5: Configure.pl: tru64

1 view
Skip to first unread message

Jarkko Hietaniemi

unread,
Jun 29, 2006, 12:48:24 PM6/29/06
to Perl6 Internals List
Parrot 0.4.5 in Tru64 5.1B:

$ perl Configure.pl
...
Determining if your platform supports readline.........................yes.
Determining if your platform supports gdbm..............................no.

Testing snprintf...resolve_symbols: loader error: dlopen:
libreadline.so.4: symbol "tgetnum" unresolved

step auto::snprintf died during execution: Can't run the snprintf
testing program: at config/auto/snprintf.pm line 33.

at Configure.pl line 443

$

(sorry about possible linewraps, Thunderbird thinks its doing me
a favour...)

I don't know what tgetnum() from libreadline.so has to do with
testing for snprintf. (I do know from other contexts that Tru64
wouldn't have a C99 snprintf.)

Any way to add verbosity to e.g. see which commands are being run?

Leopold Toetsch

unread,
Jun 30, 2006, 12:28:25 PM6/30/06
to j...@iki.fi, Perl6 Internals List

On Jun 29, 2006, at 18:48, Jarkko Hietaniemi wrote:

> Any way to add verbosity to e.g. see which commands are being run?

perl Configure.pl --verbose-step=snprintf

leo

Jarkko Hietaniemi

unread,
Jul 1, 2006, 3:42:20 PM7/1/06
to Leopold Toetsch, Perl6 Internals List

...
Testing snprintf...cc -std -D_INTRINSICS -fprm d -ieee -I/p/include
-DLANGUAGE_C -pthread -D_XOPEN_SOURCE=500 -I./include -c test.c
cxx -expect_unresolved '*' -O4 -msym -std -L/p/lib test.o -o test -lm
-lutil -lpthread -laio -lrt -lgmp -lreadline
./test


resolve_symbols: loader error: dlopen: libreadline.so.4: symbol
"tgetnum" unresolved

step auto::snprintf died during execution: Can't run the snprintf
testing program: at config/auto/snprintf.pm line 33.

"cxx" is the Tru64 C++ compiler.

(1) I don't know all those -libraries are being listed, the test
program certainly doesn't need them... yes, the linker should
know to ignore them as unused... but:

(2) This is not Linux so that -lgmp and -lreadline are not "standard"
but have been compiled and installed by the sysadmins (not admin)
and:

(3) They most definitely have not been compiled with cxx,
but most probably with gcc. And I have no idea whether
the libreadline.so actually works, since I haven't lately
tried to compile anything with it. In non-Linux systems
one cannot always assume installed GNU stuff works and/or
is uptodate...

Therefore, I am not surprised by the runtime linker getting cranky
when the "./test" is being run. (I have no idea who tries to call
"tgetnum", certainly not test.c.) If I remove the -lreadline from
the cxx line, the "./test" works fine giving:

borken snprintf: n = 1

as expected. I don't know how to start fixing this.

> leo
>
>

Jarkko Hietaniemi

unread,
Jul 2, 2006, 9:04:44 AM7/2/06
to Leopold Toetsch, Perl6 Internals List
Leopold Toetsch wrote:

> On Jul 1, 2006, at 21:42, Jarkko Hietaniemi wrote:
>
>> (1) I don't know all those -libraries are being listed, the test
>> program certainly doesn't need them... yes, the linker should
>> know to ignore them as unused... but:
>>
>> (2) This is not Linux so that -lgmp and -lreadline are not "standard"
>> but have been compiled and installed by the sysadmins (not admin)
>> and:
>>
>> (3) They most definitely have not been compiled with cxx,
>> but most probably with gcc. And I have no idea whether
>> the libreadline.so actually works, since I haven't lately
>> tried to compile anything with it. In non-Linux systems
>> one cannot always assume installed GNU stuff works and/or
>> is uptodate...
>
> -lgmp or -lreadline are either just coming from (a) the equivalent perl
> settings or are the result of an (b) earlier test.
> For (a) the libs could be disabled in the hints file [1].
> For (b) we'd need some commandline and hints settings like:
> 'no-readline' or such, which disables this lib.

But the -lreadline is needed for something later?

> [1] config/init/hints/*
>
> leo
>
>

Leopold Toetsch

unread,
Jul 2, 2006, 9:01:58 AM7/2/06
to j...@iki.fi, Perl6 Internals List

On Jul 1, 2006, at 21:42, Jarkko Hietaniemi wrote:

> (1) I don't know all those -libraries are being listed, the test
> program certainly doesn't need them... yes, the linker should
> know to ignore them as unused... but:
>
> (2) This is not Linux so that -lgmp and -lreadline are not "standard"
> but have been compiled and installed by the sysadmins (not admin)
> and:
>
> (3) They most definitely have not been compiled with cxx,
> but most probably with gcc. And I have no idea whether
> the libreadline.so actually works, since I haven't lately
> tried to compile anything with it. In non-Linux systems
> one cannot always assume installed GNU stuff works and/or
> is uptodate...

-lgmp or -lreadline are either just coming from (a) the equivalent perl

settings or are the result of an (b) earlier test.
For (a) the libs could be disabled in the hints file [1].
For (b) we'd need some commandline and hints settings like:
'no-readline' or such, which disables this lib.

[1] config/init/hints/*

leo

Leopold Toetsch

unread,
Jul 2, 2006, 9:31:30 AM7/2/06
to j...@iki.fi, Perl6 Internals List

On Jul 2, 2006, at 15:04, Jarkko Hietaniemi wrote:

> But the -lreadline is needed for something later?

If readline is available, it can be used at interactive prompts, but
it's not absolutely needed.

$ cd languages/perl6/
...
lt@perl6 $ ../../parrot perl6.pbc
p6> say 'ok'
ok
p6>

leo

Jarkko Hietaniemi

unread,
Jul 2, 2006, 5:47:01 PM7/2/06
to Leopold Toetsch, Perl6 Internals List
Leopold Toetsch wrote:
> On Jul 2, 2006, at 15:04, Jarkko Hietaniemi wrote:
>
>> But the -lreadline is needed for something later?
>
> If readline is available, it can be used at interactive prompts, but
> it's not absolutely needed.

I think I will first try to get the admins to get compile a newer
libreadline.

Will Coleda

unread,
Jul 2, 2006, 6:48:16 PM7/2/06
to j...@iki.fi, Leopold Toetsch, Perl6 Internals List
While you're waiting, we should improve the test for readline: we
used to have similar failures where we found readline (or other
probed thingees) but the version was not recent enough for us to link
with.

Regards.

--
Will "Coke" Coleda
wi...@coleda.com


Jarkko Hietaniemi

unread,
Jul 3, 2006, 3:27:42 PM7/3/06
to Will Coleda, Leopold Toetsch, Perl6 Internals List
Will Coleda wrote:
> While you're waiting, we should improve the test for readline: we
> used to have similar failures where we found readline (or other
> probed thingees) but the version was not recent enough for us to link
> with.

(1) Some sort of grouping for the libraries so that only the libraries
really needed for an executable are used?

(2) I don't know what the -lreadline test currently does but obviously
it wrongly detects -lreadline as useable in this system.

> Regards.
>

0 new messages