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.