Hi.

I'm trying to enable readline for php like this:

"./configure --with-readline=shared,/usr"

But it won't work... I wonder at what point, if ever it did work?

I'm getting this error (php-4.3.0RC4):

[snip]

configure:62897: checking for readline support
configure:62983: checking for tgetent in -lncurses
configure:63002: gcc -o conftest -g -O2   conftest.c -lncurses  -lcrypt 
-lresolv -lm -ldl -lnsl  -lcrypt 1>&5
configure:63265: checking for readline in -lreadline
configure:63284: gcc -o conftest -g -O2
    -L/usr/lib
    conftest.c -lreadline  -lcrypt -lresolv -lm -ldl -lnsl  -lcrypt 1>&5
/usr/lib/libreadline.so: undefined reference to `tgetnum'
/usr/lib/libreadline.so: undefined reference to `tgoto'
/usr/lib/libreadline.so: undefined reference to `tgetflag'
/usr/lib/libreadline.so: undefined reference to `BC'
/usr/lib/libreadline.so: undefined reference to `tputs'
/usr/lib/libreadline.so: undefined reference to `PC'
/usr/lib/libreadline.so: undefined reference to `tgetent'
/usr/lib/libreadline.so: undefined reference to `UP'
/usr/lib/libreadline.so: undefined reference to `tgetstr'
collect2: ld returned 1 exit status
configure: failed program was:
#line 63273 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char readline();

int main() {
readline()
; return 0; }


This works (with my readline):

READLINE_SHARED_LIBADD="-lhistory -lreadline -lncurses" ./configure 
--with-readline=shared,/usr

But my full configure script does not want to work..., somewhere down the line 
the above gets eaten up...


BTW. the attached patch should be applied to the realine package in Cooker.  
There is no such thing as "--with-curses=ncurses". I could not file a bug in 
buzilla about this because readline was not to be found in the list... warly?

Chears.
-- 
Regards // Oden Eriksson, Deserve-IT.com
--- readline.spec	2002-08-05 09:35:26.000000000 +0000
+++ readline.spec.oden	2002-12-22 17:05:19.000000000 +0000
@@ -4,7 +4,7 @@
 Summary: Library for reading lines from a terminal
 Name: readline
 Version: %{pversion}
-Release: 4mdk
+Release: 5mdk
 License: GPL
 Group: System/Libraries
 Source: ftp://ftp.gnu.org/pub/gnu/readline/readline-%{version}.tar.bz2
@@ -16,6 +16,7 @@
 Patch100: readline-4.3-vim-reapeat-fix.diff.bz2
 Patch101: readline-4.3-segfault-fix.diff.bz2
 Provides: libreadline.so.4.1 libhistory.so.4.1 libreadline.so.4.2 libhistory.so.4.2
+BuildRequires: ncurses-devel
 Buildroot: %{_tmppath}/%{name}-root/
 
 %description
@@ -49,8 +50,9 @@
 
 %build
 export CFLAGS="$RPM_OPT_FLAGS"
-%configure --with-curses=ncurses --libdir=%_libdir
+%configure --with-curses --libdir=%_libdir
 perl -p -i -e 's|-Wl,-rpath.*||' shlib/Makefile
+find -name Makefile | xargs perl -pi -e "s|^TERMCAP_LIB.*|TERMCAP_LIB = -lncurses|g"
 make static shared
 
 %install
@@ -60,12 +62,16 @@
 # before /usr is mounted
 install -d $RPM_BUILD_ROOT/%{_lib}
 mv $RPM_BUILD_ROOT%{_libdir}/*.so* $RPM_BUILD_ROOT/%{_lib}
-ln -s ../../%{_lib}/lib{history,readline}.so $RPM_BUILD_ROOT%{_libdir}
 for i in history readline; do
    ln -s ../%{_lib}/lib$i.so.4 $RPM_BUILD_ROOT/%{_lib}/lib$i.so.4.1
    ln -s ../%{_lib}/lib$i.so.4 $RPM_BUILD_ROOT/%{_lib}/lib$i.so.4.2
 done
 
+pushd $RPM_BUILD_ROOT/%{_lib}
+    for f in *so*; do
+	ln -s ../../%{_lib}/$f $RPM_BUILD_ROOT%{_libdir}/$f
+    done
+popd
 
 # The make install moves the existing libs with a suffix of old. Urgh.
 rm -f $RPM_BUILD_ROOT/%{_lib}/*.old
@@ -89,6 +95,7 @@
 %files
 %defattr(-,root,root)
 /%{_lib}/lib*.so.*
+%{_libdir}/lib*.so.*
 
 %files devel
 %defattr(-,root,root)
@@ -102,6 +109,11 @@
 /%{_lib}/*so
 
 %changelog
+* Sun Dec 22 2002 Oden Eriksson <[EMAIL PROTECTED]> 4.3-5mdk
+- fix silly softlinks to make PHP 4.3.0RC4 compile and also fix
+  --with-curses + perl seach and replace to enable needed missing
+  ncurses symbols.
+
 * Mon Aug 05 2002 Thierry Vignaud <[EMAIL PROTECTED]> 4.3-4mdk
 - fix non working repeating with '.' command [P100]
 - fix segfault on c-arrows [P101]

Reply via email to