Subject: Re: GPGME 1.0.3 Build Problem
From: "djh" <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>
Date: Fri, 01 Dec 2006 11:32:35 +0900
List-Id: <cygwin.cygwin.com>

Thanks for your repsonse Marcus.

> From: Marcus Brinkmann (GPGME member)

> From: Henman: I have run into a build problem on cygwin system.
> > 
> > 
> > I am not an expert in the utilities used to build gpgme.  But, wonder why a library seems to be missing.  Could this be a command line argument ordering problem??
> 
> It seems libtool doesn't support your target architecture well enough
> for GPGME to build.

libtool has been cygwin aware for several years and I've had no problems with it building many shared libraries.  (Except for example, GMP in which they assumed possibly too much in libtool and was forced to explicity use CPPFLAGS="-DDLL_EXPORT"

I can envision where something like that can be cause of non-portability in the gpgme building code.

#
# GPGME Make problem (November 30, 2006):  (see below)
#
(cd .libs && rm -f libgpgme.la && ln -s ../libgpgme.la libgpgme.la)
if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I..      -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -MT ath-pthread.lo -MD -MP -MF ".deps/ath-pthread.Tpo" -c -o ath-pthread.lo ath-pthread.c; \
        then mv -f ".deps/ath-pthread.Tpo" ".deps/ath-pthread.Plo"; else rm -f ".deps/ath-pthread.Tpo"; exit 1; fi
 gcc -DHAVE_CONFIG_H -I. -I. -I.. -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -MT ath-pthread.lo -MD -MP -MF .deps/ath-pthread.Tpo -c ath-pthread.c  -DPIC -o .libs/ath-pthread.o
/bin/sh ../libtool --tag=CC --mode=link gcc  -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes   -o libgpgme-pthread.la -rpath /usr/local/lib  -version-info 15:0:4 ath-pthread.lo libgpgme-real.la   stpcpy.lo memrchr.lo -lpthread -lgpg-error

libtool: link: warning: undefined symbols not allowed in i686-pc-cygwin shared libraries

.....

make[2]: Entering directory `/usr/src/gpgme/gpgme-1.0.3/tests'
Making all in gpg
make[3]: Entering directory `/usr/src/gpgme/gpgme-1.0.3/tests/gpg'
if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../gpgme    -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -MT t-encrypt.o -MD -MP -MF ".deps/t-encrypt.Tpo" -c -o t-encrypt.o t-encrypt.c; \
        then mv -f ".deps/t-encrypt.Tpo" ".deps/t-encrypt.Po"; else rm -f ".deps/t-encrypt.Tpo"; exit 1; fi
/bin/sh ../../libtool --tag=CC --mode=link gcc  -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes   -o t-encrypt.exe  t-encrypt.o ../../gpgme/libgpgme.la
mkdir .libs
gcc -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -o t-encrypt.exe t-encrypt.o  ../../gpgme/.libs/libgpgme.a /usr/lib/libgpg-error.dll.a -L/usr/lib /usr/lib/libintl.dll.a /usr/lib/libiconv.dll.a
../../gpgme/.libs/libgpgme.a(posix-sema.o): In posix-sema.c
			- undefined reference to `__gpgme_ath_mutex_destroy'
			- undefined reference to `__gpgme_ath_init'
			- undefined reference to `__gpgme_ath_mutex_lock'
			- undefined reference to `__gpgme_ath_mutex_unlock'
			- undefined reference to `__gpgme_ath_read'

> We are using the mingw32 architecture, not cygwin, for our native Windows builds.

I am using cygwin, a (unix) posix compliant system. GPGME should be able to be build without any problems.

The problem should be looked into.  I will do what I can, but need you experts help.

Please look into the build code regarding building for "cygwin" ...

Cygwin Group:
   Do any of you in the cygwin group know what the problem is?

Regards,
  Henman

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/