Re: [AOLSERVER] AoLserver 4.5.1 install issue

55 views
Skip to first unread message

nitin chandra

unread,
Oct 16, 2009, 12:21:23 AM10/16/09
to AOLS...@listserv.aol.com
On Thu, Oct 15, 2009 at 2:01 PM, nitin chandra <nitinc...@gmail.com> wrote:
> Hello Everyone,
>
> I have a fresh installation of FC10, with gcc 4.3.2, kerrnel 2.6.27,
> on a P4 1.8GHz, 256 DDR RAM, with Python 2.6.2 (--enable-shared,
> --with-threads, /opt/python262), Tcl / Tk 8.5 installed as part of the
> distro (/usr/lib), tclConfig.sh has TCL_THREADS=1
>
> This is my test installations and for R&D. Looking to develop app. /
> solution with PyWX+PostgreSQL on AoLserver with OpenSSL.
>
> following steps were taken for installation:
>
> # tar zxvf aolserver-4.5.1-src.tar.gz
>
> # cd aolserver-4.5.1
>
> # ./configure --prefix=/opt/aolserver --with-tcl=/usr/lib\
>  --enable-threads | tee aol451_config.log
>
>
>   ===========XXXX=============
> script files util/nsmakeall.tcl, util/nsinstall.tcl,
> util/nsremove.tcl, first, are not given appropriate permissions for
> execution (x) and, second, they are neither handed over to tclsh by
> make nor come with a shebang.
> 1> "chmod u+x" on all of the scripts mentioned above.
> 2> add shebangs (e.g., #!/usr/bin/tclsh) on the top of the scripts.
>    =============XXXXXXX==============
>
> # make > aol451_make.log
>
> This is the following error i got on running 'make' :
>
>
>
> nsthreadtest.c:51: warning: âRCSIDâ defined but not used
> /home/nitin/newpy/aolserver-4.5.1/util/nsremove.tcl nsthreadtest
> gcc  -o nsthreadtest nsthreadtest.o \
>                -L. -lnsthread -L/usr/lib -ltcl8.5 -ldl  -lieee -lm
> -lgcc_s   -Wl,--export-dynamic
> nsthreadtest.o: In function `main':
> /home/nitin/newpy/aolserver-4.5.1/nsthread/nsthreadtest.c:481:
> undefined reference to `pthread_create'
> /home/nitin/newpy/aolserver-4.5.1/nsthread/nsthreadtest.c:490:
> undefined reference to `pthread_join'
> ./libnsthread.so: undefined reference to `pthread_mutex_trylock'
> ./libnsthread.so: undefined reference to `pthread_key_create'
> ./libnsthread.so: undefined reference to `pthread_attr_setstacksize'
> ./libnsthread.so: undefined reference to `pthread_sigmask'
> ./libnsthread.so: undefined reference to `pthread_getspecific'
> ./libnsthread.so: undefined reference to `pthread_attr_getstackaddr'
> ./libnsthread.so: undefined reference to `pthread_attr_getstacksize'
> ./libnsthread.so: undefined reference to `pthread_detach'
> ./libnsthread.so: undefined reference to `pthread_setspecific'
> ./libnsthread.so: undefined reference to `pthread_getattr_np'
> collect2: ld returned 1 exit status
> gmake[1]: *** [nsthreadtest] Error 1
> gmake[1]: Leaving directory `/home/nitin/newpy/aolserver-4.5.1/nsthread'
>
> Can someone please support me in resolving this issue and get me up a
> working AoLserver.
>
> TIA
>
> Nitin
>


--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <list...@listserv.aol.com> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of your email blank.

russell muetzelfeldt

unread,
Oct 16, 2009, 4:32:18 AM10/16/09
to AOLS...@listserv.aol.com
On 16/10/2009, at 3:21 PM, nitin chandra wrote:
> On Thu, Oct 15, 2009 at 2:01 PM, nitin chandra <nitinc...@gmail.com
> > wrote:
>>
>> following steps were taken for installation:
>>
>> # tar zxvf aolserver-4.5.1-src.tar.gz
>>
>> # cd aolserver-4.5.1
>>
>> # ./configure --prefix=/opt/aolserver --with-tcl=/usr/lib\ --enable-
>> threads | tee aol451_config.log
>>
>>
>> ===========XXXX=============
>> script files util/nsmakeall.tcl, util/nsinstall.tcl,
>> util/nsremove.tcl, first, are not given appropriate permissions for
>> execution (x) and, second, they are neither handed over to tclsh by
>> make nor come with a shebang.
>> 1> "chmod u+x" on all of the scripts mentioned above.
>> 2> add shebangs (e.g., #!/usr/bin/tclsh) on the top of the scripts.
>> =============XXXXXXX==============

According to the README (section 3c) the correct way to build
aolserver 4.5.1 is not calling configure yourself, but in the top
level of the unpacked tarball to run "tclsh nsconfig.tcl -install /
path/to/wherever" which itself runs configure and drives the rest of
the process. First time I tried to build 4.5.1, I ran configure myself
and later was unable to successfully complete the build (I don't
recall the specific error), but running nsconfig.tcl instead did work.
I never bothered looking inside to see what it's setting up
differently, but there's obviously something.

It looks like the specific problem you're having is the build system
can't find or isn't trying to link against libpthread. Try the
documented build process and see if that helps with setting up a
working build environment.


cheers

Russell

Dossy Shiobara

unread,
Oct 16, 2009, 10:23:47 AM10/16/09
to AOLS...@listserv.aol.com
On 10/16/09 12:21 AM, nitin chandra wrote:
> On Thu, Oct 15, 2009 at 2:01 PM, nitin chandra <nitinc...@gmail.com> wrote:
>> Hello Everyone,
>>
>> I have a fresh installation of FC10, with gcc 4.3.2, kerrnel 2.6.27,
>> on a P4 1.8GHz, 256 DDR RAM, with Python 2.6.2 (--enable-shared,
>> --with-threads, /opt/python262), Tcl / Tk 8.5 installed as part of the
>> distro (/usr/lib), tclConfig.sh has TCL_THREADS=1

Did you compile Tcl with --enable-threads, or did you just edit
tclConfig.sh and set TCL_THREADS=1?

It appears that you need -lpthreads but it's not being included in your
LIBS and linker step. There's something strange going on ... do you
have libpthreads installed?


--
Dossy Shiobara | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network | http://panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)

nitin chandra

unread,
Oct 16, 2009, 12:15:56 PM10/16/09
to AOLS...@listserv.aol.com
Tcl was a default install ... as and when installed the OS. So i am
not sure if it was installed with '--enable-threads'.

I cant recollect editing TCL_THREADS=1

How do i find if 'libpthreads' is installed?

Nitin

>>>
>>> I have a fresh installation of FC10, with gcc 4.3.2, kerrnel 2.6.27,
>>> on a P4 1.8GHz, 256 DDR RAM, with Python 2.6.2 (--enable-shared,
>>> --with-threads, /opt/python262), Tcl / Tk 8.5 installed as part of the
>>> distro (/usr/lib), tclConfig.sh has TCL_THREADS=1
>
> Did you compile Tcl with --enable-threads, or did you just edit
> tclConfig.sh and set TCL_THREADS=1?
>
> It appears that you need -lpthreads but it's not being included in your
> LIBS and linker step.  There's something strange going on ... do you
> have libpthreads installed?
>


--

Dossy Shiobara

unread,
Oct 16, 2009, 12:27:37 PM10/16/09
to AOLS...@listserv.aol.com
On 10/16/09 12:15 PM, nitin chandra wrote:
> How do i find if 'libpthreads' is installed?

You said you're on Fedora FC10, right? I'm guessing something like this:

$ rpm -qa | grep pthreads

might work.

--
Dossy Shiobara | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network | http://panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)

nitin chandra

unread,
Oct 16, 2009, 12:38:46 PM10/16/09
to AOLS...@listserv.aol.com
Yup you are right

No pthreads

[root@mi aolserver-4.5.1]# rpm -qa | grep pthreads
[root@mi aolserver-4.5.1]#

Reg

Nitin

nitin chandra

unread,
Oct 16, 2009, 12:42:09 PM10/16/09
to AOLS...@listserv.aol.com
doing

# yum install pthreads

nitin chandra

unread,
Oct 16, 2009, 12:59:05 PM10/16/09
to AOLS...@listserv.aol.com
yum install did not work ....


[root@mi aolserver-4.5.1]# yum install pthreads
Loaded plugins: refresh-packagekit
fedora
| 2.8 kB 00:00
updates
| 3.4 kB 00:00
updates/primary_db
| 4.6 MB 01:26
Setting up Install Process
Parsing package install arguments
No package pthreads available.
Nothing to do

Dossy Shiobara

unread,
Oct 16, 2009, 1:09:55 PM10/16/09
to AOLS...@listserv.aol.com
Sorry, it appears that pthreads should be part of glibc and glibc-devel.
Check for those.

--
Dossy Shiobara | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network | http://panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)

nitin chandra

unread,
Oct 16, 2009, 1:32:51 PM10/16/09
to AOLS...@listserv.aol.com
[root@mi aolserver-4.5.1]# rpm -qa | grep glibc
glibc-devel-2.9-2.i386
glibc-common-2.9-2.i386
glibc-headers-2.9-2.i386
glibc-2.9-2.i686
[root@mi aolserver-4.5.1]#

Reg

Nitin


On Fri, Oct 16, 2009 at 10:39 PM, Dossy Shiobara <do...@panoptic.com> wrote:
> Sorry, it appears that pthreads should be part of glibc and glibc-devel.
>  Check for those.
>
>

nitin chandra

unread,
Oct 16, 2009, 1:38:08 PM10/16/09
to AOLS...@listserv.aol.com
pth is what is loaded instead of pthreads ... on FC10.

How do i integrate that.

Reg

Nitin

nitin chandra

unread,
Oct 16, 2009, 1:40:22 PM10/16/09
to AOLS...@listserv.aol.com
just did
# yum install pth-devel

and it installed pth-devel

now what ?

Reg

Nitin

Dossy Shiobara

unread,
Oct 16, 2009, 1:45:50 PM10/16/09
to AOLS...@listserv.aol.com
On 10/16/09 1:38 PM, nitin chandra wrote:
> pth is what is loaded instead of pthreads ... on FC10.
>
> How do i integrate that.

$ yum install pth

??? Not really sure - I'm not a big fan of yum/RPM.

--
Dossy Shiobara | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network | http://panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)

Dossy Shiobara

unread,
Oct 16, 2009, 1:47:25 PM10/16/09
to AOLS...@listserv.aol.com
On 10/16/09 1:40 PM, nitin chandra wrote:
> just did
> # yum install pth-devel
>
> and it installed pth-devel
>
> now what ?

I imagine you should "make clean" and then re-configure and re-make
AOLserver.


--
Dossy Shiobara | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network | http://panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)

Tom Jackson

unread,
Oct 16, 2009, 12:45:57 PM10/16/09
to AOLS...@listserv.aol.com
On Fri, Oct 16, 2009 at 1:32 AM, russell muetzelfeldt
<russm-a...@slofith.org> wrote:
> According to the README (section 3c) the correct way to build aolserver
> 4.5.1 is not calling configure yourself, but in the top level of the
> unpacked tarball to run

"tclsh nsconfig.tcl -install /path/to/wherever"

> which itself runs configure and drives the rest of the process. First time I
> tried to build 4.5.1, I ran configure myself and later was unable to
> successfully complete the build (I don't recall the specific error), but
> running nsconfig.tcl instead did work. I never bothered looking inside to
> see what it's setting up differently, but there's obviously something.

The main problem is you have to use the correct tclsh for AOLserver.
Build tcl first, then make sure that tclsh is found first. Or append
TCLSH=... to each command you execute.


> It looks like the specific problem you're having is the build system can't
> find or isn't trying to link against libpthread. Try the documented build
> process and see if that helps with setting up a working build environment.

TCLSH must be set, otherwise crap in crap out.

tom jackson

nitin chandra

unread,
Oct 16, 2009, 2:30:21 PM10/16/09
to AOLS...@listserv.aol.com
ok here is what i found out ... after tinkering around ... and seeing
some where on the web a post of 'pthread.c' ... which is also in
aolserver-4.5.1/nsthread/

pthread.c has

#include "thread.h" ;;; is there in nsthread/
#include <pthread.h> ;;; is not there in nsthread/, if its calling
from OS.... then i
;;; stand corrected.


>
> "tclsh nsconfig.tcl -install /path/to/wherever"
>

Ran this command ...... finishes without any error and creating
include/ns.mak

[aolserver-4.5.1]# tclsh nsconfig.tcl -install /opt/aolserver451

I can build Tcl / Tk ... but then i have installed python 2.6.2 from
source... with preinstlled tcl8.5 / tk8.5 .... which is a part of
FFTW3, LAPACK-LITE, ATLAS, NumPy & SciPy....

If i install ... or are left with no other option.... then i reinstall
all the above .... which incidently took me approx 2months...and lot
of sleepless nights ......will take less time now as i have documented
all the steps .... still ....

How do i know which tclsh is correct?

so that leaves

trying out TCLSH= . How do i set TCLSH? ....and should i give commands like

# TCLSH=./configure --prefix=/opt/aolserver451 --with-tcl=/usr/lib
--enable-threads | tee\ aol451_config.log

and then

# TCLSH=make | tee aol451_make.log

#TCLSH=make install | tee aol451_install.log


Reg

Nitin

Andrew Piskorski

unread,
Oct 16, 2009, 2:45:27 PM10/16/09
to AOLS...@listserv.aol.com
On Fri, Oct 16, 2009 at 01:09:55PM -0400, Dossy Shiobara wrote:
> Sorry, it appears that pthreads should be part of glibc and glibc-devel.
> Check for those.

What? Any vaguely normal Linux system is certainly going to have
POSIX threads support, so looking at that stuff is a waste of time.
What the original poster needs is:

1. A Tcl correctly configured and built using --enable-threads. He
absolutely definitely needs this.

2. Optionally, the Tcl Thread Extension, for the enhanced
AOLserver-compatible tsv support, etc. This stuff:
http://tcl.cvs.sourceforge.net/viewvc/tcl/thread/doc/html/
http://tcl.cvs.sourceforge.net/viewvc/*checkout*/tcl/thread/doc/html/tsv.html?revision=1.16
On Ubuntu the Thread Extension is the "tclthread" package.

Your distribution might have #1 available as a pre-built binary
package, or it might not. If not, you need to compile Tcl yourself,
either from source in the normal cross-platform Tcl manner, or by
rebuilding your distribution's source package with different options.

Recent versions of Ubuntu build Tcl with thread support, but
historically, most Linux and Unix systems built Tcl single-threaded.

--
Andrew Piskorski <a...@piskorski.com>
http://www.piskorski.com/

Jeff Hobbs

unread,
Oct 16, 2009, 2:56:02 PM10/16/09
to AOLS...@listserv.aol.com
On 16/10/2009 11:45 AM, Andrew Piskorski wrote:
> On Fri, Oct 16, 2009 at 01:09:55PM -0400, Dossy Shiobara wrote:
>> Sorry, it appears that pthreads should be part of glibc and glibc-devel.
>> Check for those.
>
> What? Any vaguely normal Linux system is certainly going to have
> POSIX threads support, so looking at that stuff is a waste of time.
> What the original poster needs is:
>
> 1. A Tcl correctly configured and built using --enable-threads. He
> absolutely definitely needs this.
>
> 2. Optionally, the Tcl Thread Extension, for the enhanced
> AOLserver-compatible tsv support, etc. This stuff:
> http://tcl.cvs.sourceforge.net/viewvc/tcl/thread/doc/html/
> http://tcl.cvs.sourceforge.net/viewvc/*checkout*/tcl/thread/doc/html/tsv.html?revision=1.16
> On Ubuntu the Thread Extension is the "tclthread" package.
>
> Your distribution might have #1 available as a pre-built binary
> package, or it might not. If not, you need to compile Tcl yourself,
> either from source in the normal cross-platform Tcl manner, or by
> rebuilding your distribution's source package with different options.
>
> Recent versions of Ubuntu build Tcl with thread support, but
> historically, most Linux and Unix systems built Tcl single-threaded.

Or download ActiveTcl 8.5, which is built with --enable-threads across
all platforms and comes with the Thread extension:
http://www.activestate.com/tcl

Jeff

Andrew Piskorski

unread,
Oct 16, 2009, 3:17:54 PM10/16/09
to AOLS...@listserv.aol.com
On Sat, Oct 17, 2009 at 12:00:21AM +0530, nitin chandra wrote:

> How do i know which tclsh is correct?

One thing that would help to know is to check whether your tclsh is in
fact built with thread support or not. I'm not actually sure what the
best way is to do that; perhaps Tcl has some command to tell you that
directly, but if so I don't know it. However, this will probably
answer that question:

$ ldd /usr/bin/tclsh8.4
linux-gate.so.1 => (0xb7f93000)
libtcl8.4.so.0 => /usr/lib/libtcl8.4.so.0 (0xb7ec7000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7ec3000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7ea9000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7e83000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7d20000)
/lib/ld-linux.so.2 (0xb7f94000)

Note the "libpthread.so". That means that this particular tclsh
binary is liked against the system pthread library, which strongly
implies that this tclsh was built multi-threaded.

Remember that you may have multiple Tcl binaries and libraries
installed on your box, you need to make sure you are building
AOLserver against the correct one. In older (4.0.x and earlier)
versions of AOLserver, you'd do that with a configure option of
"--with-tcl=/usr/lib/tcl8.4" or the like. The newer 4.5.x AOLserver
build system might require something slightly different, but it should
be in the install instructions.

Daniel Stasinski

unread,
Oct 16, 2009, 4:41:08 PM10/16/09
to AOLS...@listserv.aol.com
> How do i know which tclsh is correct?

Fedora's TCL rpm is not thread enabled. It used to be but they
switched it back a few releases ago.

./configure --enable-threads --enable-shared --prefix=/opt/tcl

On the aolserver side,

./configure --with-tcl=/opt/tcl --prefix=/opt/aolserver

Daniel

--
| ---------------------------------------------------------------
| Daniel P. Stasinski | http://www.saidsimple.com
| dan...@avenues.org | http://www.disabilities-r-us.com
| XMMP: mooo...@avenues.org | http://www.avenues.org
| Google Talk: mooooooo | http://www.scriptkitties.com

Tom Jackson

unread,
Oct 16, 2009, 6:28:57 PM10/16/09
to AOLS...@listserv.aol.com
On Fri, Oct 16, 2009 at 11:30 AM, nitin chandra <nitinc...@gmail.com> wrote:
> trying out TCLSH= . How do i set TCLSH? ....and should i give commands like
>
> # TCLSH=./configure --prefix=/opt/aolserver451 --with-tcl=/usr/lib
> --enable-threads | tee\ aol451_config.log
>
> and then
>
> # TCLSH=make | tee aol451_make.log
>
> #TCLSH=make install | tee aol451_install.log

the TCLSH environment var needs to be the full path plus executable.

Assume you install Tcl with --prefix=/web/tnt

Then I install AOLserver in, say /web/tnt, here is what I use:

$ make TCLSH=/web/tnt/bin/tclsh8.4
$ make TCLSH=/web/tnt/bin/tclsh8.4 install
...

or

$ ./configure TCHSH=/web/bin/tclsh8.4

or

$ /web/bin/tclsh8.4 nsconfig.tcl

But I usually create a new configure file called my-configure:

#!/bin/bash
export TCLSH=/web/tnt/bin/tclsh8.4

./configure --prefix=/web/tnt \
--with-tcl=/web/tnt/lib \
--enable-threads \
--enable-shared \
--enable-debug

The problem with nsconfig.tcl is it assumes you are installing in the
Tcl prefix. This is a good idea, it is best to keep your AOLserver and
Tcl installs combined, so you can maintain the Tcl setup for that
specific AOLserver.

Once you do nsconfig.tcl, you must use the TCLSH on each command line,
or export the var, as I did in the my-configure script. Also, when
you do a "make clean", you also need the TCLSH var set.

tom jackson

nitin chandra

unread,
Oct 15, 2009, 4:31:46 AM10/15/09
to AOLS...@listserv.aol.com
Hello Everyone,

I have a fresh installation of FC10, with gcc 4.3.2, kerrnel 2.6.27,
on a P4 1.8GHz, 256 DDR RAM, with Python 2.6.2 (--enable-shared,
--with-threads, /opt/python262), Tcl / Tk 8.5 installed as part of the
distro (/usr/lib), tclConfig.sh has TCL_THREADS=1

This is my test installations and for R&D. Looking to develop app. /


solution with PyWX+PostgreSQL on AoLserver with OpenSSL.

following steps were taken for installation:

# tar zxvf aolserver-4.5.1-src.tar.gz

# cd aolserver-4.5.1

# ./configure --prefix=/opt/aolserver --with-tcl=/usr/lib\
--enable-threads | tee aol451_config.log


===========XXXX=============
script files util/nsmakeall.tcl, util/nsinstall.tcl,
util/nsremove.tcl, first, are not given appropriate permissions for
execution (x) and, second, they are neither handed over to tclsh by
make nor come with a shebang.
1> "chmod u+x" on all of the scripts mentioned above.
2> add shebangs (e.g., #!/usr/bin/tclsh) on the top of the scripts.
=============XXXXXXX==============

# make > aol451_make.log

TIA

Nitin


Reply all
Reply to author
Forward
0 new messages