Jdesk / memcached

Automatically exported from code.google.com/p/memcached
0 stars 0 forks source link

Compilation error under OpenBSD 4.5 #97

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Output from ./configure and make:

# ./configure
checking build system type... i386-unknown-openbsd4.5
checking host system type... i386-unknown-openbsd4.5
checking target system type... i386-unknown-openbsd4.5
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for icc in use... no
checking for Sun cc in use... no
checking for gcc option to accept ISO C99... -std=gnu99
checking whether gcc -std=gnu99 and cc understand -c and -o together... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcov... /usr/bin/gcov
checking for libevent directory... (system)
checking for library containing socket... none required
checking for library containing gethostbyname... none required
checking for library containing umem_cache_create... no
checking for library containing gethugepagesizes... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for an ANSI C-conforming const... yes
checking for socklen_t... yes
checking for endianness... little
checking for htonll... no
checking for library containing pthread_create... none required
checking for mlockall... yes
checking for getpagesizes... no
checking for memcntl... no
checking for sigignore... no
checking for alignment... none
checking for setppriv... no
checking umem.h usability... no
checking umem.h presence... no
checking for umem.h... no
checking for xml2rfc... no
checking for xsltproc... /usr/local/bin/xsltproc
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
# make
make  all-recursive
Making all in doc
make  all-am
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-memcached.o -MD -MP
-MF .deps/memcached-memcached.Tpo -c -o memcached-memcached.o `test -f
'memcached.c' || echo './'`memcached.c
mv -f .deps/memcached-memcached.Tpo .deps/memcached-memcached.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-hash.o -MD -MP -MF
.deps/memcached-hash.Tpo -c -o memcached-hash.o `test -f 'hash.c' || echo
'./'`hash.c
mv -f .deps/memcached-hash.Tpo .deps/memcached-hash.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-slabs.o -MD -MP -MF
.deps/memcached-slabs.Tpo -c -o memcached-slabs.o `test -f 'slabs.c' ||
echo './'`slabs.c
mv -f .deps/memcached-slabs.Tpo .deps/memcached-slabs.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-items.o -MD -MP -MF
.deps/memcached-items.Tpo -c -o memcached-items.o `test -f 'items.c' ||
echo './'`items.c
mv -f .deps/memcached-items.Tpo .deps/memcached-items.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-assoc.o -MD -MP -MF
.deps/memcached-assoc.Tpo -c -o memcached-assoc.o `test -f 'assoc.c' ||
echo './'`assoc.c
mv -f .deps/memcached-assoc.Tpo .deps/memcached-assoc.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-thread.o -MD -MP -MF
.deps/memcached-thread.Tpo -c -o memcached-thread.o `test -f 'thread.c' ||
echo './'`thread.c
mv -f .deps/memcached-thread.Tpo .deps/memcached-thread.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-daemon.o -MD -MP -MF
.deps/memcached-daemon.Tpo -c -o memcached-daemon.o `test -f 'daemon.c' ||
echo './'`daemon.c
mv -f .deps/memcached-daemon.Tpo .deps/memcached-daemon.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-stats.o -MD -MP -MF
.deps/memcached-stats.Tpo -c -o memcached-stats.o `test -f 'stats.c' ||
echo './'`stats.c
mv -f .deps/memcached-stats.Tpo .deps/memcached-stats.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-util.o -MD -MP -MF
.deps/memcached-util.Tpo -c -o memcached-util.o `test -f 'util.c' || echo
'./'`util.c
mv -f .deps/memcached-util.Tpo .deps/memcached-util.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall
-Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached-cache.o -MD -MP -MF
.deps/memcached-cache.Tpo -c -o memcached-cache.o `test -f 'cache.c' ||
echo './'`cache.c
mv -f .deps/memcached-cache.Tpo .deps/memcached-cache.Po
gcc -std=gnu99  -g -O2 -pthread -Wall -Werror -pedantic -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-declarations -Wredundant-decls   -o
memcached memcached-memcached.o  memcached-hash.o memcached-slabs.o 
memcached-items.o memcached-assoc.o  memcached-thread.o memcached-daemon.o
 memcached-stats.o memcached-util.o  memcached-cache.o   -levent
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-memcached.o
-MD -MP -MF .deps/memcached_debug-memcached.Tpo -c -o
memcached_debug-memcached.o `test -f 'memcached.c' || echo './'`memcached.c
mv -f .deps/memcached_debug-memcached.Tpo .deps/memcached_debug-memcached.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-hash.o -MD -MP
-MF .deps/memcached_debug-hash.Tpo -c -o memcached_debug-hash.o `test -f
'hash.c' || echo './'`hash.c
mv -f .deps/memcached_debug-hash.Tpo .deps/memcached_debug-hash.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-slabs.o -MD
-MP -MF .deps/memcached_debug-slabs.Tpo -c -o memcached_debug-slabs.o `test
-f 'slabs.c' || echo './'`slabs.c
mv -f .deps/memcached_debug-slabs.Tpo .deps/memcached_debug-slabs.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-items.o -MD
-MP -MF .deps/memcached_debug-items.Tpo -c -o memcached_debug-items.o `test
-f 'items.c' || echo './'`items.c
mv -f .deps/memcached_debug-items.Tpo .deps/memcached_debug-items.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-assoc.o -MD
-MP -MF .deps/memcached_debug-assoc.Tpo -c -o memcached_debug-assoc.o `test
-f 'assoc.c' || echo './'`assoc.c
mv -f .deps/memcached_debug-assoc.Tpo .deps/memcached_debug-assoc.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-thread.o -MD
-MP -MF .deps/memcached_debug-thread.Tpo -c -o memcached_debug-thread.o
`test -f 'thread.c' || echo './'`thread.c
mv -f .deps/memcached_debug-thread.Tpo .deps/memcached_debug-thread.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-daemon.o -MD
-MP -MF .deps/memcached_debug-daemon.Tpo -c -o memcached_debug-daemon.o
`test -f 'daemon.c' || echo './'`daemon.c
mv -f .deps/memcached_debug-daemon.Tpo .deps/memcached_debug-daemon.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-stats.o -MD
-MP -MF .deps/memcached_debug-stats.Tpo -c -o memcached_debug-stats.o `test
-f 'stats.c' || echo './'`stats.c
mv -f .deps/memcached_debug-stats.Tpo .deps/memcached_debug-stats.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-util.o -MD -MP
-MF .deps/memcached_debug-util.Tpo -c -o memcached_debug-util.o `test -f
'util.c' || echo './'`util.c
mv -f .deps/memcached_debug-util.Tpo .deps/memcached_debug-util.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2
-pthread -Wall -Werror -pedantic -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -MT memcached_debug-cache.o -MD
-MP -MF .deps/memcached_debug-cache.Tpo -c -o memcached_debug-cache.o `test
-f 'cache.c' || echo './'`cache.c
mv -f .deps/memcached_debug-cache.Tpo .deps/memcached_debug-cache.Po
gcc -std=gnu99 -fprofile-arcs -ftest-coverage -g -O2 -pthread -Wall -Werror
-pedantic -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
-Wredundant-decls    -o memcached-debug memcached_debug-memcached.o 
memcached_debug-hash.o memcached_debug-slabs.o  memcached_debug-items.o 
memcached_debug-assoc.o  memcached_debug-thread.o  memcached_debug-daemon.o
 memcached_debug-stats.o memcached_debug-util.o  memcached_debug-cache.o 
-lgcov  -levent
/usr/bin/ld: cannot find -lgcov
collect2: ld returned 1 exit status
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 364 of Makefile).
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 778 of Makefile).
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 280 of Makefile).

Original issue reported on code.google.com by artur.li...@googlemail.com on 12 Oct 2009 at 10:43

Attachments:

GoogleCodeExporter commented 9 years ago
Patch proposal:
http://github.com/trondn/memcached/commit/fb026551cae301db4a058edc96dd662198cbe4
66

Original comment by trond.no...@gmail.com on 12 Oct 2009 at 12:37

GoogleCodeExporter commented 9 years ago

Original comment by trond.no...@gmail.com on 12 Oct 2009 at 12:44

GoogleCodeExporter commented 9 years ago
New output from ./configure and make (for code from
http://github.com/trondn/memcached/commit/fb026551cae301db4a058edc96dd662198cbe4
66
):

# ./configure
checking build system type... i386-unknown-openbsd4.5
checking host system type... i386-unknown-openbsd4.5
checking target system type... i386-unknown-openbsd4.5
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for icc in use... no
checking for Sun cc in use... no
checking for gcc option to accept ISO C99... -std=gnu99
checking whether gcc -std=gnu99 and cc understand -c and -o together... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcov... /usr/bin/gcov
checking for libevent directory... (system)
checking for library containing socket... none required
checking for library containing gethostbyname... none required
checking for library containing umem_cache_create... no
checking for library containing gethugepagesizes... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for an ANSI C-conforming const... yes
checking for socklen_t... yes
checking for endianness... little
checking for htonll... no
checking for library containing pthread_create... none required
checking for mlockall... yes
checking for getpagesizes... no
checking for memcntl... no
checking for sigignore... no
checking for alignment... none
checking for setppriv... no
checking umem.h usability... no
checking umem.h presence... no
checking for umem.h... no
checking for xml2rfc... no
checking for xsltproc... /usr/local/bin/xsltproc
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
#
#
#
# make
make  all-recursive
Making all in doc
make  all-am
gcc -std=gnu99 -DHAVE_CONFIG_H -I.  -DNDEBUG   -g -O2 -pthread -Wall -Werror
-pedantic -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
-Wredundant-decls -MT memcached-memcached.o -MD -MP -MF 
.deps/memcached-memcached.Tpo
-c -o memcached-memcached.o `test -f 'memcached.c' || echo './'`memcached.c
memcached.c:97: error: syntax error before "__extension__"
memcached.c:97: error: syntax error before '?' token
memcached.c:59: warning: `drive_machine' declared `static' but never defined
memcached.c:60: warning: `new_socket' declared `static' but never defined
memcached.c:61: warning: `server_socket' declared `static' but never defined
memcached.c:62: warning: `try_read_command' declared `static' but never defined
memcached.c:71: warning: `try_read_network' declared `static' but never defined
memcached.c:72: warning: `try_read_udp' declared `static' but never defined
memcached.c:74: warning: `conn_set_state' declared `static' but never defined
memcached.c:77: warning: `stats_init' declared `static' but never defined
memcached.c:78: warning: `server_stats' declared `static' but never defined
memcached.c:79: warning: `process_stat_settings' declared `static' but never 
defined
memcached.c:83: warning: `settings_init' declared `static' but never defined
memcached.c:86: warning: `event_handler' declared `static' but never defined
memcached.c:87: warning: `conn_close' declared `static' but never defined
memcached.c:88: warning: `conn_init' declared `static' but never defined
memcached.c:89: warning: `accept_new_conns' declared `static' but never defined
memcached.c:90: warning: `update_event' declared `static' but never defined
memcached.c:91: warning: `complete_nread' declared `static' but never defined
memcached.c:92: warning: `process_command' declared `static' but never defined
memcached.c:93: warning: `write_and_free' declared `static' but never defined
memcached.c:94: warning: `ensure_iov_space' declared `static' but never defined
memcached.c:95: warning: `add_iov' declared `static' but never defined
memcached.c:96: warning: `add_msghdr' declared `static' but never defined
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 425 of Makefile).
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 778 of Makefile).
*** Error code 1

Stop in /usr/src/memcached-1.4.2 (line 280 of Makefile).

Original comment by artur.li...@googlemail.com on 12 Oct 2009 at 2:36

GoogleCodeExporter commented 9 years ago
Did you remember to run autogen.sh ? The output from configure doesn't print 
out the new message I added:
[..cut..]
checking for gcov... /opt/gcc/bin/gcov
checking for for libgcov... yes
[..cut..]

Original comment by trond.no...@gmail.com on 12 Oct 2009 at 3:21

GoogleCodeExporter commented 9 years ago
The OpenBSD 4.5 builder was happy both before and after change
9ff5b444a14f9c03d77ce6548c690bdcfc41e0c6 -- but based on this report, we should 
now
be able to deal with a half-installed gcov.

Original comment by dsalli...@gmail.com on 12 Oct 2009 at 9:49

GoogleCodeExporter commented 9 years ago
Oh... I have got no luck...
Full output is in attached file.
# ./autogen.sh
aclocal...
autoheader...
automake...
autoconf...
configure.ac:68: error: possibly undefined macro: AC_PROG_CC_C99
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.

Original comment by artur.li...@googlemail.com on 12 Oct 2009 at 10:04

Attachments:

GoogleCodeExporter commented 9 years ago
That's right.  autogen doesn't work for us on OpenBSD for some strange reason.  
Our
builder does what autogen does, but more manually:

./version.sh
aclocal
autoheader
automake --foreign --add-missing
autoconf
./configure # actually, it adds --disable-coverage here. I should turn that off.

It could be that you need a newer autoconf, or perhaps check installed (autoconf
gives entirely incorrect errors at times).

Original comment by dsalli...@gmail.com on 12 Oct 2009 at 10:17

GoogleCodeExporter commented 9 years ago
On my system I have autoconf 2.62 (last is 2.64) - it is not so old... ;)
Last one compiled version of memcached on my OpenBSD 4.5 box is 1.8 - it works 
fine.
I hope, in the future will be the possibility to compile memcached even without 
any
warning... :) (every one can have dreams ;)
OpenBSD is the one of the best targets for web systems - I do not know any one 
more
secure free system.

Best regards,
Artur

Original comment by artur.li...@googlemail.com on 12 Oct 2009 at 10:36

GoogleCodeExporter commented 9 years ago
I'm not arguing the value of OpenBSD.  That's why we pushed to get a builder 
there:

http://li44-175.members.linode.com:8010/builders/openbsd45-amd64

Original comment by dsalli...@gmail.com on 12 Oct 2009 at 10:43

GoogleCodeExporter commented 9 years ago
Issue 134 has been merged into this issue.

Original comment by trond.no...@gmail.com on 22 Apr 2010 at 5:04