[prev in list] [next in list] [prev in thread] [next in thread] 

List:       amanda-users
Subject:    3.3.0 on Mac OS X (Lion) "conflicting types for 'semaphore_t' " error
From:       Mike Neimoyer <mike () summersault ! com>
Date:       2011-10-11 17:18:21
Message-ID: 4E947A5D.4050905 () summersault ! com
[Download RAW message or body]

Good morning!

New install of amanda client on a brand new computer (still picking 
pieces of styrofoam packing off the keyboard).  Installed Xcode 4.1 this 
morning, then gathered the required dependencies for amanda:

gettext (0.18.1.1)
glib (2.29.2)
libiconv (1.13.1)
pkg-config (0.25)
amanda (3.3.0 src)

After installing the dependencies, I configured the amanda client:

./configure --with-user=amanda --with-group=wheel --prefix=/usr/local 
--without-server --with-config='Desktop' --with-gnutar=/usr/bin/gnutar 
--with-index-server=jazz.summersault.com

There were no errors.  Upon performing a make, I receive:

=====
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../config 
-I../../common-src -I../../common-src -I../../xfer-src -I../../gnulib 
-I../../ndmp-src 
-I/System/Library/Perl/5.12/darwin-thread-multi-2level/CORE 
-fno-strict-aliasing -D_GNU_SOURCE -I/usr/local/include -D_REENTRANT 
-I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -DSWIG 
-g -O2 -fno-strict-aliasing -MT xferwrap.lo -MD -MP -MF 
.deps/xferwrap.Tpo -c xferwrap.c  -fno-common -DPIC -o .libs/xferwrap.o
In file included from ../../xfer-src/element-glue.h:28,
                  from ../../xfer-src/amxfer.h:28,
                  from xferwrap.c:24:
../../common-src/semaphore.h:33: error: conflicting types for ‘semaphore_t’
/usr/include/mach/mach_types.h:126: error: previous declaration of 
‘semaphore_t’ was here
make[5]: *** [xferwrap.lo] Error 1
make[4]: *** [all] Error 2
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
bash-3.2#
=====

Doing a search for the semaphore error message, I see this thread:
http://forums.zmanda.com/showthread.php?t=3701

I downloaded the patch file, did a "make distclean" to clean up.  I 
applied the patch, and re-ran the configure script (same arguments as 
above) without errors.  When I make again, I get:

=====
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../config -I../gnulib 
-fno-strict-aliasing -D_GNU_SOURCE -I/usr/local/include -D_REENTRANT 
-I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -Wall 
-Wextra -Wparentheses -Wdeclaration-after-statement -Wmissing-prototypes 
-Wstrict-prototypes -Wmissing-declarations -Wformat -Wformat-security 
-Wsign-compare -Wfloat-equal -Wold-style-definition -Wno-strict-aliasing 
-Wno-unknown-pragmas -g -O2 -fno-strict-aliasing -MT protocol.lo -MD -MP 
-MF .deps/protocol.Tpo -c protocol.c -o protocol.o >/dev/null 2>&1
mv -f .deps/protocol.Tpo .deps/protocol.Plo
make[3]: *** No rule to make target `semaphore.c', needed by 
`semaphore.lo'.  Stop.
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
=====

I see that there is instructions to edit the Makefile.in file and 
replace semaphore with amsemaphore in "appropriate places".  However, I 
don't know what would be "appropriate places" to make the replacement.

Can someone provide some insight?  I see that Jean-Louis stated he 
committed a patch for this, but unfortunately, it seems to not have 
gotten included in the 3.3.0 that I downloaded this morning.

Thank you!
~~Mike
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic