[OPEN-ILS-DEV] Problems encountered during Evergreen-ILS-1.2.3.0 compilation under 64-bit CentOS5

2008-09-01 Thread Václav Jansa

Dear all,

I´m just installing Evergreen on a current version of 64-bit CentOS 5.
Dependencies for the compilation of opensrf 0.9 have been successfully
resolved. However, I have not succeeded in compiling Evergreen. Please
see the output of make below. Could you please give me any advice how
this might be fixed?

Thank you in advance!

Vasek Jansa



[EMAIL PROTECTED] Evergreen-ILS-1.2.3.0]$ make verbose
Building...

-- [ openils_core ] ---

make[1]: Entering directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'
c_apps
make -C c-apps
make[2]: Entering directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/c-apps'
oils_auth.so
cc -shared -W1 -pipe -g -Wall -O2 -fPIC -I/usr/include/libxml2/
-I/usr/include/apache2 -I/usr/include/apr-1 -D_LARGEFILE64_SOURCE
-I/usr/include/libxml2//libxml
-I/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -I/openils/include/
-I/openils/include//opensrf  -DOSRF_LOG_PARAMS -lobjson -lopensrf  -L .
-L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
-Wl,-rpath=/openils//lib/ -L/usr/lib64/dbd -loils_utils -loils_idl
oils_auth.o -o /home/opensrf/Evergreen-ILS-1.2.3.0/.tmp/oils_auth.so
oils_cstore.so
cc -shared -W1 -lobjson -lopensrf  -L .
-L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
-Wl,-rpath=/openils//lib/ -L/usr/lib64/dbd -loils_idl -ldbi -loils_utils
-ldbdpgsql oils_cstore.o -o
/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp/oils_cstore.so
oils_rstore.so
cc -shared -W1 -lobjson -lopensrf  -L .
-L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
-Wl,-rpath=/openils//lib/ -L/usr/lib64/dbd -loils_idl -ldbi -ldbdpgsql
oils_rstore.o -o /home/opensrf/Evergreen-ILS-1.2.3.0/.tmp/oils_rstore.so
oils_dataloader
cc -lobjson -lopensrf  -L . -L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp
-L /openils/lib/ -Wl,-rpath=/openils//lib/ -L/usr/lib64/dbd -loils_idl
-loils_utils oils_dataloader.o -o
/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp/oils_dataloader
make[2]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/c-apps'
make -C extras oils_requestor
make[2]: Entering directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
cc -L . -L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
oils_requestor.o  -lreadline -loils_utils -lopensrf -lobjson -lxml2
-loils_idl -o oils_requestor
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `PC'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetflag'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetent'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `UP'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tputs'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgoto'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetnum'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `BC'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetstr'
collect2: ld returned 1 exit status
make[2]: *** [oils_requestor] Error 1
make[2]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
make[1]: *** [c_apps] Error 2
make[1]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'

-- [ openils_web ] ---

make[1]: Entering directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'
mod_xmlent
make -C apachemods mod_xmlent.so
make[2]: Entering directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/apachemods'
make[2]: `mod_xmlent.so' is up to date.
make[2]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/apachemods'
make[1]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'

-- [ openils_db ] ---

--
Vaclav Jansa,
IT Administrator
State Technical Library
Marianske n. 5
POB 206
110 01 Prague 1
Czech Republic
+420 221 663 487

The World is getting smaller and smaller, the Man is getting bigger and 
bigger, an idiot. - Jan Werich 2.X.1960




--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



Re: [OPEN-ILS-DEV] Problems encountered during Evergreen-ILS-1.2.3.0 compilation under 64-bit CentOS5

2008-09-01 Thread Dan Scott
Hi Václav:

2008/9/1 Václav Jansa [EMAIL PROTECTED]:
 Dear all,

 I´m just installing Evergreen on a current version of 64-bit CentOS 5.
 Dependencies for the compilation of opensrf 0.9 have been successfully
 resolved. However, I have not succeeded in compiling Evergreen. Please
 see the output of make below. Could you please give me any advice how
 this might be fixed?

snip
 `/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
 cc -L . -L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
 oils_requestor.o  -lreadline -loils_utils -lopensrf -lobjson -lxml2
 -loils_idl -o oils_requestor
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `PC'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tgetflag'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tgetent'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `UP'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tputs'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tgoto'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tgetnum'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `BC'
 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
 undefined reference to `tgetstr'
 collect2: ld returned 1 exit status
 make[2]: *** [oils_requestor] Error 1
 make[2]: Leaving directory
 `/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
 make[1]: *** [c_apps] Error 2
 make[1]: Leaving directory
 `/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'
/snip

It looks to me like you need to explicitly link against the ncurses
library to resolve those references.

Try changing the following line in Open-ILS/src/extras/Makefile from:

LDLIBS += -lreadline -loils_utils -lopensrf -lobjson -lxml2 -loils_idl

to:

LDLIBS += -lreadline -loils_utils -lopensrf -lobjson -lxml2 -loils_idl -lncurses

(and this assumes that the ncurses libraries are installed, of course!)

Just out of curiousity - did you use the Makefile.install to install
the prerequisites for CentOS using the centos target? I set that up a
few months ago but haven't had the chance to revisit it recently to
see how well it's working.

-- 
Dan Scott
Laurentian University


Re: [OPEN-ILS-DEV] Z39.50 target

2008-09-01 Thread Dan Scott
Just to follow up on this thread...

2008/6/2 Dan Scott [EMAIL PROTECTED]:
 2008/5/26 Mike Rylander [EMAIL PROTECTED]:
 On Mon, May 26, 2008 at 9:09 PM, Bill Erickson [EMAIL PROTECTED] wrote:
 On Monday 26 May 2008 8:57 Mike Rylander wrote:
 On Sat, May 24, 2008 at 8:03 PM, Grant Johnson [EMAIL PROTECTED] wrote:

 snip


 This is the plan for 1.4, though I don't think Debian has a modern
 enough YAZ package, which means installing YAZ from source.

 The EG installer makefile will handle this for you:

 http://svn.open-ils.org/trac/ILS/browser/trunk/Open-ILS/src/extras/Makefile.install

 $ make -f Makefile.install install_yaz


 Heh ... unfortunately Net::Z3950::Simple2ZOOM says:

 *** ERROR!
 Simple2ZOOM requires at least version 3.0.10 of YAZ,
 but you only have version 2.1.18.

 and the makefile specifies yaz-2.1.56.  I am unsure if 3.x will cause
 any other problems, though.  First thing that comes to mind is the
 Net::ZOOM implementation for remote Z targets.

 As we kicked around on IRC, the least disruptive method in the short
 term may be to run Simple2ZOOM on a separate server (on which you can
 install the latest version of YAZ without worrying about impacting the
 version used by Evergreen). And then point that at the SRU target
 running on the Evergreen server. If you try this out and it works,
 please let the list know (and document your steps!).

I've been running yaz 3.0.34 on one of our trunk OpenSRF/trunk
Evergreen servers with no discernible problems thus far, so last night
I decided to take the plunge and test out and document the
Simple2ZOOM-over-SRU server approach for providing a Z39.50 server. It
turns out that it's not difficult at all.

http://evergreen-ils.org/dokuwiki/doku.php?id=evergreen-admin:sru_and_z39.50

(I could do a better job documenting this now that I've got a little
more experience with SRU and CQL under my belt).

And I'll note again that you don't _have_ to have yaz 3.0.34 running
on your Evergreen server and have everything running on a single box.
Simple2ZOOM worked quite happily running on my laptop pointing to the
dev.gapines.org server.

-- 
Dan Scott
Laurentian University


Re: [OPEN-ILS-DEV] Problems encountered during Evergreen-ILS-1.2.3.0 compilation under 64-bit CentOS5

2008-09-01 Thread Dale Arntson

Hi Vaclav,

I also encountered this problem on a Redhat 5 install, and was able to 
get around it by adding termcap to LDLIBS in the 
Open-ILS/src/extras/Makefile as follows:


LDLIBS += -ltermcap -lreadline -loils_utils -lopensrf -lobjson -lxml2 
-loils_idl


Regards,

-dale


Dan Scott wrote:

Hi Václav:

2008/9/1 Václav Jansa [EMAIL PROTECTED]:

Dear all,

I´m just installing Evergreen on a current version of 64-bit CentOS 5.
Dependencies for the compilation of opensrf 0.9 have been successfully
resolved. However, I have not succeeded in compiling Evergreen. Please
see the output of make below. Could you please give me any advice how
this might be fixed?


snip

`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
cc -L . -L/home/opensrf/Evergreen-ILS-1.2.3.0/.tmp -L /openils/lib/
oils_requestor.o  -lreadline -loils_utils -lopensrf -lobjson -lxml2
-loils_idl -o oils_requestor
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `PC'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetflag'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetent'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `UP'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tputs'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgoto'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetnum'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `BC'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so:
undefined reference to `tgetstr'
collect2: ld returned 1 exit status
make[2]: *** [oils_requestor] Error 1
make[2]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src/extras'
make[1]: *** [c_apps] Error 2
make[1]: Leaving directory
`/home/opensrf/Evergreen-ILS-1.2.3.0/Open-ILS/src'

/snip

It looks to me like you need to explicitly link against the ncurses
library to resolve those references.

Try changing the following line in Open-ILS/src/extras/Makefile from:

LDLIBS += -lreadline -loils_utils -lopensrf -lobjson -lxml2 -loils_idl

to:

LDLIBS += -lreadline -loils_utils -lopensrf -lobjson -lxml2 -loils_idl -lncurses

(and this assumes that the ncurses libraries are installed, of course!)

Just out of curiousity - did you use the Makefile.install to install
the prerequisites for CentOS using the centos target? I set that up a
few months ago but haven't had the chance to revisit it recently to
see how well it's working.