> Patch applied. Thanks! > > I wonder why term.h should be included later if it provides a lower level > interface than curses.
Compilation errors occur while compilng testing/lftp-2.6.0.tar.gz (lftp-pre2.6.0-20020801 ?). (1) Solaris 9 with openssl-0.9.7-beta3 (a) % gcc -DHAVE_CONFIG_H -I. -I../include -O2 -Wall -Wwrite-strings \ -Woverloaded-virtual -fno-exceptions -fno-rtti -fno-implement-inlines \ -Winline -c -o misc.o `test -f 'misc.cc' || echo './'`misc.cc In file included from misc.cc:797: /usr/include/term.h:1060: field `Ottyb' has incomplete type /usr/include/term.h:1061: field `Nttyb' has incomplete type #if defined(HAVE_TERM_H) -#include <term.h> +/* #include <term.h> */ +extern char *tigetstr(char *); #elif defined(HAVE_NCURSES_TERM_H) #include <ncurses/term.h> #endif (b) % cc -DHAVE_CONFIG_H -I. -I../include -O2 -Wall -Wwrite-strings \ -Woverloaded-virtual -fno-exceptions -fno-rtti -fno-implement-inlines \ -Winline -c -o lftp_ssl.o `test -f 'lftp_ssl' || echo './'`ftp_sslc.cc In file included from log.h:26, from lftp_ssl.cc:30: /usr/include/unistd.h:191: parse error before `,' token In file included from PollVec.h:31, from SMTask.h:24, from log.h:28, from lftp_ssl.cc:30: /usr/include/sys/poll.h: In function `char* DES_crypt(const char*, const char*)': /usr/include/sys/poll.h:124: non-local function `int poll(DES_crypt(const char*, const char*)::pollfd*, long unsigned int, int)' uses local type ` DES_crypt(const char*, const char*)::pollfd' In file included from log.h:28, from lftp_ssl.cc:30: SMTask.h:33: local class `class DES_crypt(const char*, const char*)::SMTask' shall not have static data member `DES_crypt(const char*, const char*)::SMTask*DES_crypt(const char*, const char*)::SMTask::chain' SMTask.h:34: local class `class DES_crypt(const char*, const char*)::SMTask' shall not have static data member `DES_crypt(const char*, const char*)::SMTask*DES_crypt(const char*, const char*)::SMTask::sched_scan' SMTask.h:35: local class `class DES_crypt(const char*, const char*)::SMTask' shall not have static data member `DES_crypt(const char*, const char*)::PollVec DES_crypt(const char*, const char*)::SMTask::sched_total' SMTask.h:58: local class `class DES_crypt(const char*, const char*)::SMTask' shall not have static data member `TimeDate DES_crypt(const char*, const char*)::SMTask::now' SMTask.h:78: local class `class DES_crypt(const char*, const char*)::SMTask' shall not have static data member `DES_crypt(const char*, const char*)::SMTask*DES_crypt(const char*, const char*)::SMTask::current' SMTask.h:33: field `DES_crypt(const char*, const char*)::SMTask::chain' in local class cannot be static SMTask.h:34: field `DES_crypt(const char*, const char*)::SMTask::sched_scan' in local class cannot be static SMTask.h:35: field `DES_crypt(const char*, const char*)::SMTask::sched_total' in local class cannot be static SMTask.h:58: field `DES_crypt(const char*, const char*)::SMTask::now' in local class cannot be static SMTask.h:78: field `DES_crypt(const char*, const char*)::SMTask::current' in local class cannot be static In file included from lftp_ssl.cc:30: log.h:50: local class `class DES_crypt(const char*, const char*)::Log' shall not have static data member `DES_crypt(const char*, const char*)::Log*DES_crypt(const char*, const char*)::Log::global' log.h:50: field `DES_crypt(const char*, const char*)::Log::global' in local class cannot be static lftp_ssl.cc:32: cannot declare static function inside another function lftp_ssl.cc:33: cannot declare static function inside another function lftp_ssl.cc:41: cannot declare static function inside another function lftp_ssl.cc: In function `int lftp_ssl_verify_callback(int, X509_STORE_CTX*)': lftp_ssl.cc:327: `int lftp_ssl_verify_callback(int, X509_STORE_CTX*)' was declared `extern' and later `static' lftp_ssl.cc:32: previous declaration of `int lftp_ssl_verify_callback(int, X509_STORE_CTX*)' <unistd.h>: 188 #if (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4)) || \ 189 defined(__EXTENSIONS__) 190 extern size_t confstr(int, char *, size_t); 191 extern char *crypt(const char *, const char *); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 192 #endif /* (defined(XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4))... */ (2) IRIX 6.5.16f and Solaris 9 % /bin/sh ../libtool ... -lcurses -lm .. ld32: ERROR 33 : Unresolved text symbol "tigetstr(char*)" -- 1st referenced by libtasks.a(misc.o). Use linker option -v to see when and which objects, archives and dsos are loaded. Undefined first referenced symbol in file tigetstr(char*) libtasks.a(misc.o) -- ayamura