monit-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: patch to add a disable-strip option (i.e.: while crosscompileing )


From: Martin Pala
Subject: Re: patch to add a disable-strip option (i.e.: while crosscompileing )
Date: Mon, 28 Mar 2005 21:20:36 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050324 Debian/1.7.6-1

It realy seems that your flex doesn't implement yywrap (your configure output):

--8<--
checking for flex... flex
checking for yywrap in -lfl... no
checking for yywrap in -ll... no
--8<--

Because we don't use custom yywrap, we can use 'noyywrap' option generaly. I have added '%option noyywrap' to cvs ... it just adds macro for yywrap() which returns 1 (default implementation in libfl does the same).

Thanks :)
Martin


Claus Klein wrote:
This is what happens:

make monit:
...

(cd /home/claus/src/buildroot/build_i386/monit-4.4; autoconf; \
        PATH=/local/Linuxi386CDK/bin:/bin:/sbin:/usr/bin:/usr/sbin 
AR=/local/Linuxi386CDK/bin/i386-linux-uclibc-ar 
AS=/local/Linuxi386CDK/bin/i386-linux-uclibc-as 
LD=/local/Linuxi386CDK/bin/i386-linux-uclibc-ld 
NM=/local/Linuxi386CDK/bin/i386-linux-uclibc-nm 
CC=/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc 
GCC=/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc 
CXX=/local/Linuxi386CDK/bin/i386-linux-uclibc-g++ 
RANLIB=/local/Linuxi386CDK/bin/i386-linux-uclibc-ranlib \
        LDFLAGS="-static" \
        CFLAGS="-Os -pipe " \
        ./configure \
        --cache-file=config.cache \
        --target=i386-linux \
        --host=i386-linux \
        --build=i386-pc-linux-gnu \
        --prefix=/usr \
        --sysconfdir=/etc/monit \
        --without-ssl \
        --disable-strip \
);
configure: creating cache config.cache
checking for i386-linux-gcc... /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc accepts -g... yes
checking for /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc option to accept 
ANSI C... none needed
checking how to run the C preprocessor... 
/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -E
checking for egrep... grep -E
checking whether /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc needs 
-traditional... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... yes
checking for flex... flex
checking for yywrap in -lfl... no
checking for yywrap in -ll... no
checking lex output file root... lex.yy
checking whether yytext is a pointer... no
checking for bison... bison -y

...

checking for SSL support... disabled
updating cache config.cache
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h

monit has been configured with the following options:
                Architecture: LINUX
                 SSL support: disabled
         resource monitoring: enabled
 accurate memory calculation: enabled
               resource code: sysdep_LINUX.c
              Compiler flags: -Os -pipe  -Wall -D _REENTRANT
                Linker flags: -lpthread -lcrypt -lresolv -lnsl
           pid file location: /var/run

touch /home/claus/src/buildroot/build_i386/monit-4.4/.configured;
make -j1 CC=/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -C 
/home/claus/src/buildroot/build_i386/monit-4.4 \
###tbd###       LEXFLAGS=" -i --noyywrap"
make[1]: Entering directory `/home/claus/src/buildroot/build_i386/monit-4.4'
bison -y -dt p.y
flex -i  l.l

...

/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -c -Os -pipe  -Wall -D _REENTRANT 
-DLINUX  -I. -I./device -I./http -I./process -I./protocols 
process/sysdep_LINUX.c -o process/sysdep_LINUX.o
/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -c -Os -pipe  -Wall -D _REENTRANT 
-DLINUX  -I. -I./device -I./http -I./process -I./protocols y.tab.c -o y.tab.o
/local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -c -Os -pipe  -Wall -D _REENTRANT 
-DLINUX  -I. -I./device -I./http -I./process -I./protocols lex.yy.c -o lex.yy.o
        /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -c -Os -pipe  -Wall -D 
_REENTRANT -DLINUX  -I. -I./device -I./http -I./process -I./protocols 
external/strftime.c -o external/strftime.o
  /local/Linuxi386CDK/bin/i386-linux-uclibc-gcc -static alert.o control.o 
daemonize.o env.o event.o files.o gc.o getloadavg.o http.o log.o md5.o 
monitor.o net.o process.o sendmail.o sha.o signal.o socket.o spawn.o ssl.o 
state.o status.o util.o validate.o xmalloc.o device/device_common.o 
http/base64.o http/cervlet.o http/engine.o http/processor.o 
process/process_common.o protocols/default.o protocols/dwp.o protocols/ftp.o 
protocols/generic.o protocols/http.o protocols/imap.o protocols/ldap2.o 
protocols/ldap3.o protocols/nntp.o protocols/pop.o protocols/protocol.o 
protocols/rdate.o protocols/rsync.o protocols/smtp.o protocols/ssh.o 
device/sysdep_LINUX.o process/sysdep_LINUX.o y.tab.o lex.yy.o 
external/strftime.o  -lpthread -lcrypt -lresolv -lnsl  -o monit
            lex.yy.o(.text+0x1868): In function `yylex':
: undefined reference to `yywrap'
collect2: ld returned 1 exit status
make[1]: *** [monit] Error 1
make[1]: Leaving directory `/home/claus/src/buildroot/build_i386/monit-4.4'
make: *** [/home/claus/src/buildroot/build_i386/monit-4.4/monit] Error 2

claus

On Saturday 26 March 2005 08:54, Martin Pala wrote:

What do you mean about the:

LEXFLAGS = -i --noyywrap

Without this, I had an unresolved symblol in buildroot environment with ulibc.

This is strange - regarding to flex documentation:

--8<--
   If you do not supply your own version of `yywrap()', then you must
either use `%option noyywrap' (in which case the scanner behaves as
though `yywrap()' returned 1), or you must link with `-lfl' to obtain
the default version of the routine, which always returns 1
--8<--

we are linking monit during compilation with libfl => it seems that your flex library version doesn't implement yywrap?

I'm using flex 2.5.31 on my debian station ... i will try the uclibc buildroot environment

Martin


--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general




--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general




reply via email to

[Prev in Thread] Current Thread [Next in Thread]