Am 14.08.2012 um 04:34 schrieb Liu Yuan <namei.u...@gmail.com>: > On 08/14/2012 03:13 AM, Thomas Merkel wrote: >> >> >> Signed-off-by: Thomas Merkel <t...@core.io> >> --- >> configure.ac | 1 + >> sheep/Makefile.am | 2 +- >> 2 files changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/configure.ac b/configure.ac >> index 91126e2..0ebe852 100644 >> --- a/configure.ac >> +++ b/configure.ac >> @@ -258,6 +258,7 @@ if test "x${enable_corosync}" = xyes; then >> PKG_CHECK_MODULES([corosync],[corosync]) >> PKG_CHECK_MODULES([libcpg],[libcpg]) >> PKG_CHECK_MODULES([libcfg],[libcfg]) >> + PKG_CHECK_MODULES([libcoroipcc],[libcoroipcc]) >> AC_DEFINE_UNQUOTED([HAVE_COROSYNC], 1, [have corosync]) >> PACKAGE_FEATURES="$PACKAGE_FEATURES corosync" >> fi >> diff --git a/sheep/Makefile.am b/sheep/Makefile.am >> index 16c79f0..f425190 100644 >> --- a/sheep/Makefile.am >> +++ b/sheep/Makefile.am >> @@ -45,7 +45,7 @@ sheep_SOURCES += trace/trace.c trace/mcount.S >> trace/stabs.c trace/graph.c >> endif >> >> sheep_LDADD = ../lib/libsheepdog.a -lpthread \ >> - $(libcpg_LIBS) $(libcfg_LIBS) $(libacrd_LIBS) $(LIBS) >> + $(libcpg_LIBS) $(libcfg_LIBS) $(libacrd_LIBS) >> $(libcoroipcc_LIBS) $(LIBS) >> sheep_DEPENDENCIES = ../lib/libsheepdog.a >> >> >> > > As far as I know, Sheepdog doesn't use coroipc at all. I can compile on > Ubuntu 10.10 without error. Could you please detail the error output? > > Thanks, > Yuan
On Ubuntu 12.04 LTS i receiving the following error in the "sheep" folder by building sheepdog: -->8-- /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_crypto_set': (.text+0x2c6d): undefined reference to `coroipcc_msg_send_reply_receive' --8<-- Attached on the mail you will find the complete configure and compile output. I found also one bug in the old version with Ubuntu precise: https://bugs.launchpad.net/ubuntu/+source/sheepdog/+bug/935442 Best regards, Thomas
checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking whether make supports nested variables... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no 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 dependency style of gcc... gcc3 checking whether ln -s works... yes checking whether make sets $(MAKE)... (cached) yes checking for ranlib... ranlib checking for groff... groff checking for socket in -lsocket... no checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E 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 size_t... yes checking for working alloca.h... yes checking for alloca... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking for sys/wait.h that is POSIX.1 compatible... yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking for stdint.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/ioctl.h usability... yes checking sys/ioctl.h presence... yes checking for sys/ioctl.h... yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking syslog.h usability... yes checking syslog.h presence... yes checking for syslog.h... yes checking for unistd.h... (cached) yes checking for sys/types.h... (cached) yes checking getopt.h usability... yes checking getopt.h presence... yes checking for getopt.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking sys/sockio.h usability... no checking sys/sockio.h presence... no checking for sys/sockio.h... no checking utmpx.h usability... yes checking utmpx.h presence... yes checking for utmpx.h... yes checking urcu.h usability... yes checking urcu.h presence... yes checking for urcu.h... yes checking urcu/uatomic.h usability... yes checking urcu/uatomic.h presence... yes checking for urcu/uatomic.h... yes checking for an ANSI C-conforming const... yes checking for uid_t in sys/types.h... yes checking for inline... inline checking for int16_t... yes checking for int32_t... yes checking for int64_t... yes checking for int8_t... yes checking for size_t... (cached) yes checking for ssize_t... yes checking whether time.h and sys/time.h may both be included... yes checking for uint16_t... yes checking for uint32_t... yes checking for uint64_t... yes checking for uint8_t... yes checking for working volatile... yes checking whether closedir returns void... no checking for error_at_line... yes checking for mbstate_t... yes checking for working POSIX fnmatch... yes checking for pid_t... yes checking vfork.h usability... no checking vfork.h presence... no checking for vfork.h... no checking for fork... yes checking for vfork... yes checking for working fork... yes checking for working vfork... (cached) yes checking whether gcc needs -traditional... no checking for stdlib.h... (cached) yes checking for GNU libc compatible malloc... yes checking for working memcmp... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible realloc... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking for sys/socket.h... (cached) yes checking types of arguments for select... int,fd_set *,struct timeval * checking return type of signal handlers... void checking for vprintf... yes checking for _doprnt... no checking for alarm... yes checking for alphasort... yes checking for atexit... yes checking for bzero... yes checking for dup2... yes checking for endgrent... yes checking for endpwent... yes checking for fcntl... yes checking for getcwd... yes checking for getpeerucred... no checking for getpeereid... no checking for gettimeofday... yes checking for inet_ntoa... yes checking for memmove... yes checking for memset... yes checking for mkdir... yes checking for scandir... yes checking for select... yes checking for socket... yes checking for strcasecmp... yes checking for strchr... yes checking for strdup... yes checking for strerror... yes checking for strrchr... yes checking for strspn... yes checking for strstr... yes configure: Sanitizing prefix: /usr configure: Sanitizing exec_prefix: NONE checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for fuse... no checking for corosync... yes checking for libcpg... yes checking for libcfg... yes checking whether gcc supports "-Wall"... yes checking whether gcc supports "-Wshadow"... yes checking whether gcc supports "-Wmissing-prototypes"... yes checking whether gcc supports "-Wmissing-declarations"... yes checking whether gcc supports "-Wstrict-prototypes"... yes checking whether gcc supports "-Wdeclaration-after-statement"... yes checking whether gcc supports "-Wpointer-arith"... yes checking whether gcc supports "-Wwrite-strings"... yes checking whether gcc supports "-Wcast-align"... yes checking whether gcc supports "-Wbad-function-cast"... yes checking whether gcc supports "-Wmissing-format-attribute"... yes checking whether gcc supports "-Wformat=2"... yes checking whether gcc supports "-Wformat-security"... yes checking whether gcc supports "-Wformat-nonliteral"... yes checking whether gcc supports "-Wno-long-long"... yes checking whether gcc supports "-Wunsigned-char"... no checking whether gcc supports "-Wgnu89-inline"... no checking whether gcc supports "-Wno-strict-aliasing"... yes configure: creating ./config.status config.status: creating Makefile config.status: creating collie/Makefile config.status: creating sheep/Makefile config.status: creating sheepfs/Makefile config.status: creating include/Makefile config.status: creating script/Makefile config.status: creating lib/Makefile config.status: creating man/Makefile config.status: creating include/config.h config.status: executing depfiles commands sheepdog configuration: Version = 0.4.0_128_g20b94de Prefix = /usr Executables = ${exec_prefix}/sbin Man pages = ${datarootdir}/man Doc dir = ${datarootdir}/doc/${PACKAGE_TARNAME} Libraries = /usr/lib Header files = ${prefix}/include Arch-independent files = ${datarootdir} State information = /var System configuration = /etc System init.d directory = /etc/init.d sheepdog config dir = /etc/sheepdog Features = corosync sheepdog build info: Library SONAME = Default debug options = Extra compiler warnings = Env. defined CFLAG = -g -O2 Env. defined CPPFLAGS = Env. defined LDFLAGS = OS defined CFLAGS = OS defined CPPFLAGS = OS defined LDFLAGS = OS defined LDL = -ldl OS defined DYFLAGS = ANSI defined CPPFLAGS = Coverage CFLAGS = Coverage LDFLAGS = Fatal War. CFLAGS = Trace CFLAGS = Final CFLAGS = -g -O2 -ggdb3 -Wall -Wshadow -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings -Wcast-align -Wbad-function-cast -Wmissing-format-attribute -Wformat=2 -Wformat-security -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -D_GNU_SOURCE -D_LGPL_SOURCE Final CPPFLAGS = Final LDFLAGS =
Making all in lib make[1]: Entering directory `/root/collie-sheepdog-git/lib' CC event.o CC logger.o CC net.o CC util.o CC rbtree.o CC ring_buffer.o CC strbuf.o CC sha1.o AR libsheepdog.a make[1]: Leaving directory `/root/collie-sheepdog-git/lib' Making all in collie make[1]: Entering directory `/root/collie-sheepdog-git/collie' CC collie.o CC common.o CC treeview.o CC vdi.o CC node.o CC cluster.o CCLD collie Built collie make[1]: Leaving directory `/root/collie-sheepdog-git/collie' Making all in sheep make[1]: Entering directory `/root/collie-sheepdog-git/sheep' CC sheep.o CC group.o CC request.o CC gateway.o CC store.o CC vdi.o CC work.o CC journal.o CC ops.o CC recovery.o CC local.o CC object_cache.o CC object_list_cache.o CC sockfd_cache.o CC corosync.o CC sha1_file.o CC trunk.o CC snap.o CC farm.o CCLD sheep /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_model_initialize': (.text+0x32b): undefined reference to `coroipcc_service_connect' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_finalize': (.text+0x94d): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_finalize': (.text+0x95a): undefined reference to `coroipcc_service_disconnect' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_fd_get': (.text+0xe14): undefined reference to `coroipcc_fd_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_dispatch': (.text+0x1443): undefined reference to `coroipcc_dispatch_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_dispatch': (.text+0x14ed): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_dispatch': (.text+0x1603): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_join': (.text+0x1c08): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_leave': (.text+0x1f39): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_membership_get': (.text+0x21ef): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_local_get': (.text+0x24b8): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_flow_control_state_get': (.text+0x26d4): undefined reference to `coroipcc_dispatch_flow_control_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_zcb_alloc': (.text+0x28e4): undefined reference to `coroipcc_zcb_alloc' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_zcb_free': (.text+0x2af5): undefined reference to `coroipcc_zcb_free' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_zcb_mcast_joined': (.text+0x2d2b): undefined reference to `coroipcc_zcb_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_mcast_joined': (.text+0x3001): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_iteration_initialize': (.text+0x35ee): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_iteration_next': (.text+0x3b1b): undefined reference to `coroipcc_msg_send_reply_receive_in_buf_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_iteration_next': (.text+0x3d3a): undefined reference to `coroipcc_msg_send_reply_receive_in_buf_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcpg.a(cpg.o): In function `cpg_iteration_finalize': (.text+0x3e40): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_initialize': (.text+0x19b): undefined reference to `coroipcc_service_connect' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_fd_get': (.text+0x5e4): undefined reference to `coroipcc_fd_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x80f): undefined reference to `coroipcc_dispatch_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x84d): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x871): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x88c): undefined reference to `coroipcc_dispatch_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x8df): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0x9de): undefined reference to `coroipcc_dispatch_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_dispatch': (.text+0xa29): undefined reference to `coroipcc_dispatch_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_finalize': (.text+0xcd0): undefined reference to `coroipcc_service_disconnect' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_ring_status_get': (.text+0x104d): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_ring_reenable': (.text+0x1480): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_service_load': (.text+0x1705): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_service_unload': (.text+0x19c5): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_state_track': (.text+0x1c3a): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o):(.text+0x1e70): more undefined references to `coroipcc_msg_send_reply_receive' follow /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_get_node_addrs': (.text+0x26fd): undefined reference to `coroipcc_msg_send_reply_receive_in_buf_get' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_get_node_addrs': (.text+0x2713): undefined reference to `coroipcc_msg_send_reply_receive_in_buf_put' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_local_get': (.text+0x2a18): undefined reference to `coroipcc_msg_send_reply_receive' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/libcfg.a(cfg.o): In function `corosync_cfg_crypto_set': (.text+0x2c6d): undefined reference to `coroipcc_msg_send_reply_receive' collect2: ld returned 1 exit status make[1]: *** [sheep] Error 1 make[1]: Leaving directory `/root/collie-sheepdog-git/sheep' make: *** [all-recursive] Error 1
-- sheepdog mailing list sheepdog@lists.wpkg.org http://lists.wpkg.org/mailman/listinfo/sheepdog