Re: Kannel and Solaris 10
"Alexander Malysh" <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, you don't need start-stop-daemon anymore. It's deprecated. Please use: ./bearerbox --daemon or even better ./bearerbox --daemon --parashute Please read userguide for explanations of these cmd options. Alex Am 16.12.2006, 06:08 Uhr, schrieb John Vandenberg <[email protected]>: > Hi, > > On 12/16/06, Stipe Tolj <[email protected]> wrote: >> Andrikopoulos Dimitrios wrote: >> >> > Hello, >> > >> > I'm trying to install Kannel on a SPARC Solaris 10 machine. When I >> try >> > to compile the "start-stop-daemon" >> > program, "configure" goes fine: >> > >> > # ./configure --prefix=/usr/local/gw >> --enable-start-stop-daemon >> > >> > However, "make" fails with these lines: >> > >> > gcc -D_REENTRANT=1 -I. -Igw -g -O2 -DSunOS=1 -D_FILE_OFFSET_BITS=64 >> > -I/usr/local/include/libxml2 -o utils/start-stop-daemon.o -c >> > utils/start-stop-daemon.c >> > >> > In file included from utils/start-stop-daemon.c:127: >> > >> > /usr/include/sys/procfs.h:45:2: #error "Cannot use procfs in the large >> > file compilation environment" >> > >> > make: *** [utils/start-stop-daemon.o] Error 1 >> > >> > >> > When I exclude the option "--enable-start-stop-daemon" everything >> goes >> > fine! >> >> Hi Dimitris, >> >> ok, the start-stop-daemon utility was originated from BSD flavors, >> which is of >> course NOT the "source" of Solaris. Obviously it's not portable to >> Solaris. > > It looks like using Solaris procfs with LFS requires 64 bit binaries. > > /usr/include/sys/procfs.h on Solaris 10 contains: > > /* > * This definition is temporary. Structured proc is the preferred API, > * and the older ioctl-based interface will be removed in a future > version > * of Solaris. Until then, by default, including <sys/procfs.h> will > * provide the older ioctl-based /proc definitions. To get the > structured > * /proc definitions, either include <procfs.h> or define > _STRUCTURED_PROC > * to be 1 before including <sys/procfs.h>. > */ > #ifndef _STRUCTURED_PROC > #define _STRUCTURED_PROC 0 > #endif > > #if !defined(_KERNEL) && _STRUCTURED_PROC == 0 > > #include <sys/old_procfs.h> > > #else > > /* ... */ > > #if !defined(_LP64) && _FILE_OFFSET_BITS == 64 > #error "Cannot use procfs in the large file compilation environment" > #endif > > /* ... */ > > #endif > > So the quick fix would be to compile that one binary by manually > adding -m64 to the command line: > > $ gcc -m64 -D_REENTRANT=1 -I. -Igw -g -O2 -DSunOS=1 > -D_FILE_OFFSET_BITS=64 -I/usr/include/libxml2 -o > utils/start-stop-daemon.o -c utils/start-stop-daemon.c > > $ gmake # builds a few objects and then breaks again trying to link: > ... > ld: fatal: file utils/start-stop-daemon.o: wrong ELF class: ELFCLASS64 > ld: fatal: File processing errors. No output written to > utils/start-stop-daemon > collect2: ld returned 1 exit status > gmake: *** [utils/start-stop-daemon] Error 1 > > $ gcc -m64 -D_REENTRANT=1 -I. -Igw -g -O2 -DSunOS=1 > -D_FILE_OFFSET_BITS=64 -I/usr/include/libxml2 -o > utils/start-stop-daemon utils/start-stop-daemon.o libgw.a > libwmlscript.a libwap.a libgwlib.a -lrt -lresolv -lnsl -lsocket -lm > -lpthread -L/usr/lib -R/usr/lib -lxml2 -lz -lpthread -lm -lsocket > -lnsl > > -- > John > > -- Thanks, Alex