Forum OpenACS Development: Re: AOLserver 4 Setup

Collapse
14: Re: AOLserver 4 Setup (response to 1)
Posted by William Painter on
Ok, I know I may be spamming this list, but I just can't seem to resolve the nspostgres issue.

make install POSTGRES=LSB ACS=1
/bin/rm -f nspostgres.so
gcc -pipe -shared -nostartfiles -L../nsthread -L../nsd -o nspostgres.so nspostgres.o -L/usr/lib -lpq -lnsdb -lnsdb -lnsthread -lnsd -L/usr/local/lib -ltcl8.4 -ldl  -lpthread -lieee -lm  -lz -lgcc_s  -Wl,-rpath,/usr/local/aolserver/lib -Wl,-rpath,/usr/local/lib
/usr/bin/ld: cannot find -lnsdb
collect2: ld returned 1 exit status
make: *** [nspostgres.so] Error 1

I've edited the Makefile with the -lnsdb addition here:

MODLIBS = -L$(PGLIB) -lpq -lnsdb

Sorry about all this. I would be happy to receive help privately and not clutter up this list with basic questions.

Collapse
Posted by Jade Rubick on
William: this is definitely not your fault.

The Aolserver 4.09 install process was (silently) changed slightly. I updated the docs on HEAD to reflect this, but I'm not sure they've been regenerated yet.

The change is that whenever you compile any of the modules, you have to specify where AOLSERVER is.

make install AOLSERVER=/usr/local/aolserver40r9

for example.

Collapse
Posted by William Painter on
Thank you for your kind, and helpful, response.

I tried the command you gave me with this result:

[root@vc nspostgres]# make install AOLSERVER=/usr/local/aolserver
/bin/rm -f nspostgres.so
gcc -pipe -shared -nostartfiles -L../nsthread -L../nsd -o nspostgres.so nspostgres.o -L/usr/lib -lpq -lnsdb -lnsdb -lnsthread -lnsd -L/usr/local/lib -ltcl8.4 -ldl -lpthread -lieee -lm -lz -lgcc_s -Wl,-rpath,/usr/local/aolserver/lib -Wl,-rpath,/usr/local/lib
/usr/bin/ld: cannot find -lnsdb
collect2: ld returned 1 exit status
make: *** [nspostgres.so] Error 1

I also included POSTGRES=LSB with the same result.

I checked the location of the binaries for the aolserver and they are in /usr/local/aolserver and the lib directory holds what appears to be the appropriate file:

[root@vc nspostgres]# ls -al /usr/local/aolserver/lib/
total 512
drwxr-xr-x  3 root root   4096 Dec 16 14:24 .
drwxr-xr-x  9 root root   4096 Dec 16 11:24 ..
-rwxr-xr-x  1 root root  34266 Dec 16 11:24 libnsdb.so
-rwxr-xr-x  1 root root 362436 Dec 16 11:24 libnsd.so
-rwxr-xr-x  1 root root   3936 Dec 16 11:24 libnsext.so
-rw-r--r--  1 root root  23220 Dec 16 11:24 libnspd.a
-rwxr-xr-x  1 root root  35145 Dec 16 11:24 libnsthread.so
drwxr-xr-x  2 root root   4096 Dec 16 14:24 tdom0.7.8
-rw-r--r--  1 root root   1659 Dec 16 14:24 tdomConfig.sh

I am befuddled, pretty much. It seems to be looking in the right place but isn't seeing what it needs.