Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Perl > Perl Misc > perl on pc 104

Reply
Thread Tools

perl on pc 104

 
 
Ron Eggler
Guest
Posts: n/a
 
      03-27-2008
Hi,

I need to get perl5 on our little pc104 (with goede) system in order to get
ssh-keygen( openSSH) - which depends on openSSL which depends on perl5 -
running.
When I'm trying to compile (configure) it, I get this messages:
[shell]
I used the command:

cc -o
try -O2 -fno-strict-aliasing -pipe -I/usr/local/include -L/usr/local/lib
try.c -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
./try

and I got the following output:

/usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
to `pthread_condattr_setpshared'
/usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
to `pthread_mutexattr_destroy'
/usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
to `pthread_mutexattr_setpshared'
/usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
to `pthread_mutexattr_init'
/usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
to `pthread_mutex_trylock'
collect2: ld returned 1 exit status
I can't compile the test program.
(The supplied flags or libraries might be incorrect.)

You have a BIG problem. Shall I abort Configure [y] y
Ok. Stopping Configure.
[root@NEMS perl-5.10.0]# find / -name "libdb.so"
/usr/lib/libdb.so
[/shell]

Any ideawhat I would be doing wrongly and what that exactly is, as you can
see, i made a find on the bottom and i do have the libdb.so available
in /usr/lib.

Thanks for any help!
--
chEErs roN
 
Reply With Quote
 
 
 
 
John Bokma
Guest
Posts: n/a
 
      03-27-2008
Ron Eggler <(E-Mail Removed)> wrote:

[..]

> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined
> reference to `pthread_mutexattr_setpshared'
> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined
> reference to `pthread_mutexattr_init'
> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined


[..]

> Any ideawhat I would be doing wrongly and what that exactly is, as you
> can see, i made a find on the bottom and i do have the libdb.so
> available in /usr/lib.


But do you have pthread.so (I assume it's called like that).

(Unless I am not entirely awake and read the messages wrong...)

--
John

http://johnbokma.com/perl/
 
Reply With Quote
 
 
 
 
Ben Morrow
Guest
Posts: n/a
 
      03-27-2008

Quoth Ron Eggler <(E-Mail Removed)>:
>
> I need to get perl5 on our little pc104 (with goede) system in order to get
> ssh-keygen( openSSH) - which depends on openSSL which depends on perl5 -
> running.
> When I'm trying to compile (configure) it, I get this messages:
> [shell]
> I used the command:
>
> cc -o
> try -O2 -fno-strict-aliasing -pipe -I/usr/local/include -L/usr/local/lib
> try.c -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
> ./try
>
> and I got the following output:
>
> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined reference
> to `pthread_condattr_setpshared'

<snip>
>
> Any ideawhat I would be doing wrongly and what that exactly is, as you can
> see, i made a find on the bottom and i do have the libdb.so available
> in /usr/lib.


The problem is not libdb.so, it's that libdb.so requires the pthread
functions, which aren't getting loaded. Do you have a version of
libdb.so which doesn't require threads, and can you persuade Configure
to use it?

Alternatively, can you Configure perl with -Duseithreads? I wouldn't
normally recommend this on a Unix machine (perl threads are practically
useless when you have fork(2)), but it may be an easy way to pull the
thread libraries in.

Otherwise, you may have more luck asking http://www.velocityreviews.com/forums/(E-Mail Removed): they
are the people who maintain perl, and they will certainly be interested
in situations where perl won't configure.

Ben

 
Reply With Quote
 
Ron Eggler
Guest
Posts: n/a
 
      03-27-2008
Ben Morrow wrote:

>
> Quoth Ron Eggler <(E-Mail Removed)>:
>>
>> I need to get perl5 on our little pc104 (with goede) system in order to
>> get ssh-keygen( openSSH) - which depends on openSSL which depends on
>> perl5 - running.
>> When I'm trying to compile (configure) it, I get this messages:
>> [shell]
>> I used the command:
>>
>> cc -o
>> try -O2 -fno-strict-aliasing -pipe -I/usr/local/include -L/usr/local/lib
>> try.c -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
>> ./try
>>
>> and I got the following output:
>>
>> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined
>> reference to `pthread_condattr_setpshared'

> <snip>
>>
>> Any ideawhat I would be doing wrongly and what that exactly is, as you
>> can see, i made a find on the bottom and i do have the libdb.so available
>> in /usr/lib.

>
> The problem is not libdb.so, it's that libdb.so requires the pthread
> functions, which aren't getting loaded. Do you have a version of
> libdb.so which doesn't require threads, and can you persuade Configure
> to use it?
>
> Alternatively, can you Configure perl with -Duseithreads? I wouldn't
> normally recommend this on a Unix machine (perl threads are practically
> useless when you have fork(2)), but it may be an easy way to pull the
> thread libraries in.
>
> Otherwise, you may have more luck asking (E-Mail Removed): they
> are the people who maintain perl, and they will certainly be interested
> in situations where perl won't configure.
>
> Ben


Alright, ./Configure -Duseithreads went well withou doing anything else to
pthread libraries.
BUT I get this on make test or make install:
[shell]
NEMS perl-5.10.0 # make test
make: *** No rule to make target `/usr/include/bits/errno_values.h', needed
by `miniperlmain.o'. Stop.
NEMS perl-5.10.0 # make install
make install.perl install.man STRIPFLAGS= DESTDIR=""
make[1]: Entering directory `/uc/home/ron/software/perl-5.10.0'
make[1]: *** No rule to make target `/usr/include/bits/errno_values.h',
needed by `miniperlmain.o'. Stop.
make[1]: Leaving directory `/uc/home/ron/software/perl-5.10.0'
make: *** [install] Error 2
[/shell]
Not really sure wht this means and if this relates to the pthread problem i
had before.
--
chEErs roN
 
Reply With Quote
 
Ron Eggler
Guest
Posts: n/a
 
      03-27-2008
John Bokma wrote:

> Ron Eggler <(E-Mail Removed)> wrote:
>
> [..]
>
>> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined
>> reference to `pthread_mutexattr_setpshared'
>> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined
>> reference to `pthread_mutexattr_init'
>> /usr/lib/gcc/i586-linux-uclibc/3.4.4/../../../libdb.so: undefined

>
> [..]
>
>> Any ideawhat I would be doing wrongly and what that exactly is, as you
>> can see, i made a find on the bottom and i do have the libdb.so
>> available in /usr/lib.

>
> But do you have pthread.so (I assume it's called like that).
>
> (Unless I am not entirely awake and read the messages wrong...)


I'm not sure what i would need to install to get this problem with pthread
resolved...

--
chEErs roN
 
Reply With Quote
 
John Bokma
Guest
Posts: n/a
 
      03-27-2008
Ron Eggler <(E-Mail Removed)> wrote:

[..]

> make: *** No rule to make target `/usr/include/bits/errno_values.h',
> needed by `miniperlmain.o'. Stop.


[..]

Sounds to me like errno_values.h is missing.

--
John

http://johnbokma.com/perl/
 
Reply With Quote
 
Ben Morrow
Guest
Posts: n/a
 
      03-28-2008

Quoth Ron Eggler <(E-Mail Removed)>:
>
> Alright, ./Configure -Duseithreads went well withou doing anything else to
> pthread libraries.
> BUT I get this on make test or make install:
> [shell]
> NEMS perl-5.10.0 # make test
> make: *** No rule to make target `/usr/include/bits/errno_values.h', needed
> by `miniperlmain.o'. Stop.


Do you have a /usr/include/bits/errno_values.h? If not, you need to find
one from somewhere (is there a libc headers package you can install, or
is bits/errno_values.h part of the kernel headers and you don't have
them installed?), or you need to work out why miniperlmain.c thinks it
needs it when it doesn't. IIRC bits/errno_values.h is a glibc-ism, and
is included by errno.h; you mentioned uclibc at some point, so perhaps
you are ending up with the wrong errno.h?

If you do have one, and make is just being silly, you could try removing
the

miniperlmain$(OBJ_EXT): /usr/include/bits/errno_values.h

line from makefile (note: *not* Makefile) and see if that changes the
error message. If it does you will probably need to remove all the
dependancies on headers in /usr/include before it will build.

> NEMS perl-5.10.0 # make install


Since you've been having problems configuring, you *really* want to run
make test before you make install.

> Not really sure wht this means and if this relates to the pthread problem i
> had before.


No, it probably doesn't.

Ben

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
$104 for $100 gas...gotta laugh <g> Toolman Tim Computer Support 20 05-10-2006 01:19 AM
PC-104 LINUX 512KB 1MB jevos.wang@msa.hinet.net Python 1 04-10-2006 12:40 PM
Canon 24-104 f4 L IS USM Skip M Digital Photography 10 08-20-2005 09:47 AM
Virus attacks from 81.135.104.166 Nick Hill Computer Security 1 04-20-2004 01:00 PM
Pioneer A04 / 104 rip speed fix? No Spam DVD Video 6 10-03-2003 09:40 PM



Advertisments