From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dani Moncayo Newsgroups: gmane.emacs.devel Subject: Re: MS-Windows build using Posix configury Date: Wed, 1 May 2013 21:30:44 +0200 Message-ID: References: <83d2tu49lu.fsf@gnu.org> <8338un359j.fsf@gnu.org> <831ua72fml.fsf@gnu.org> <83ehe51zi4.fsf@gnu.org> <837gjx1vpx.fsf@gnu.org> <83a9otys0h.fsf@gnu.org> <834nezzzma.fsf@gnu.org> <8361z2psr1.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: ger.gmane.org 1367436662 13405 80.91.229.3 (1 May 2013 19:31:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 1 May 2013 19:31:02 +0000 (UTC) Cc: Emacs development discussions To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 01 21:31:01 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UXck0-0000le-Q9 for ged-emacs-devel@m.gmane.org; Wed, 01 May 2013 21:31:01 +0200 Original-Received: from localhost ([::1]:52460 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UXck0-0002A1-E2 for ged-emacs-devel@m.gmane.org; Wed, 01 May 2013 15:31:00 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:34450) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UXcjq-00021b-GJ for emacs-devel@gnu.org; Wed, 01 May 2013 15:30:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UXcjo-0005cG-Ok for emacs-devel@gnu.org; Wed, 01 May 2013 15:30:50 -0400 Original-Received: from mail-lb0-f182.google.com ([209.85.217.182]:63858) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UXcjl-0005bK-Ln; Wed, 01 May 2013 15:30:45 -0400 Original-Received: by mail-lb0-f182.google.com with SMTP id p10so1749173lbi.13 for ; Wed, 01 May 2013 12:30:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=lDhZm/g2wBx/2aDrlYZORJBax+MyOqdhM/9MOwUUyS8=; b=BO/87gaT3MWBhmWcJrsXLcckeeKlm9qUxBYfY9uLc3Vo8ZznZPKi6BYk9qVaEaQ+QO B0GKah9P3nc8ZqC3KCsRHNQ4hyGCW2RS9Cd2YgnyVy5DeSG7+jRqX7QfD+aA8O7fmOkU UbjUJoJfI/74fDsOq494MmOsv6UsYGl5du6UQEqGLcnzZpHiO2pZVemmwTctOjzqBVWw CiK/pZ9MZTDh0yR1CUrdmYFaKCbMNVtuP5geDVeKhfK8u4am0F3n4SUzygG1RneTCTB1 /mQW1a7JiViRedLQRkcL/ncK8DqIADTU6isnlIKTerzbBy6EysRudZI7Al0g1We49CNG L1eQ== X-Received: by 10.152.29.132 with SMTP id k4mr1397770lah.46.1367436644335; Wed, 01 May 2013 12:30:44 -0700 (PDT) Original-Received: by 10.114.69.236 with HTTP; Wed, 1 May 2013 12:30:44 -0700 (PDT) In-Reply-To: <8361z2psr1.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 209.85.217.182 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:159255 Archived-At: >> I've been trying to build the latest trunk (plus your patch) from my >> MSYS environment, with support for the libraries I use to successfully >> include in my w32 builds (configured with "configure.bat"): XPM, JPEG, >> TIFF, GIF, PNG, GNUTLS and XML. >> >> The configure script successfully detects them, except for the last >> two (GNUTLS and XML), and for now I've failed to see what the problem >> is. > > I think it's because you didn't install pkg-config, or maybe it is not > on PATH. The configure script uses it (for some of the optional > libraries, not for all of them) to find out which compiler and linker > switches to use for each of these packages. And configure thinks you > don't have pkg-config, as this fragment from config.log shows: > > configure:8730: checking for pkg-config > configure:8761: result: no > > Without pkg-config, configure uses the wrong compiler switches to try > compiling test programs, which therefore fail, causing the configure > script to decide you don't have these libraries. > > You can find a URL from which you can download pkg-config in > INSTALL.MSYS. Note: this is a native Windows port, so install it in > the MinGW tree, not in the MSYS tree. Indeed, I didn't have pkg-config installed, sorry (I thought that the packages auto-installed by mingw-get were enough already). I've downloaded and installed that package, and the configure script does find it: configure:8730: checking for pkg-config configure:8748: found /c/usr/bin/pkg-config configure:8761: result: /c/usr/bin/pkg-config > Also note that when you install GnuTLS and libxml2 from my ports, they > also install *.pc files in lib/pkg-config/. These are the files that > pkg-config will consult when the configure script invokes it. > Therefore, I suggest that you keep the directory tree in my zip files > intact, or else you will need to manually edit these *.pc files to > match your installation. I'm saying that because this: > >> $ CPPFLAGS='-DGLYPH_DEBUG=1 -Ic:/usr/include/gnutls >> -Ic:/usr/include/noX -Ic:/usr/include' CFLAGS='-O0 -g3' >> ../mybranch/nt/msysconfig.sh --prefix=c:/usr --enable-checking > > clearly shows that you moved the GnuTLS headers into > usr/include/gnutls, which is not what gnutls.pc file says. Likewise > with the lib*.a static and import libraries: you need to have them in > the same place where the corresponding .pc says they can be found. No, I didn't move any file of the libraries or packages from their original position in the zip files. I just tried to pass that path (c:/usr/include/gnutls) to the compiler as a desperate attempt to solve the configure problem. > As I wrote in INSTALL.MSYS, I suggest to install everything into a > single tree, preserving the directories recorded in the zip. Just > unzip everything from the same parent directory, and you should be > fine. Yes, that is what I did for the libraries and packages installed manually: I uncompressed the zip files under one common parent directory (c:/usr). In fact, after installing pkg-config, the configure script now finds the libxml library: configure:13773: checking for libxml-2.0 > 2.6.17 configure:13787: result: yes CFLAGS='-Ic:/usr/include/libxml2 ' LIBS='-Lc:/usr/lib -lxml2 ' ... but it still does not find a correct gnutls library: configure:11727: checking for gnutls >= 2.6.6 Package p11-kit-1 was not found in the pkg-config search path. Perhaps you should add the directory containing `p11-kit-1.pc' to the PKG_CONFIG_PATH environment variable Package 'p11-kit-1', required by 'GnuTLS', not found configure:11745: result: no configure:11782: checking for gnutls_certificate_set_verify_function configure:11782: gcc -I /c/emacs/mybranch/nt/inc -std=gnu99 -o conftest.exe -O0 -g3 -mtune=pentium4 -DGLYPH_DEBUG=1 -Ic:/usr/include/noX -Ic:/usr/include conftest.c >&5 C:\Users\dani\AppData\Local\Temp\ccGHYX1K.o: In function `main': c:\emacs\build/conftest.c:87: undefined reference to `gnutls_certificate_set_verify_function' collect2.exe: error: ld returned 1 exit status configure:11782: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "emacs" [...] | #endif | | int | main () | { | return gnutls_certificate_set_verify_function (); | ; | return 0; | } configure:11782: result: no After seeing the error messages, I installed the "p11-kit" package (from your site "http://sourceforge.net/projects/ezwinports") and now the configure script finally does find the gnutls library: configure:11727: checking for gnutls >= 2.6.6 configure:11741: result: yes CFLAGS='-Ic:/usr/include -Ic:/usr/include/p11-kit-1 ' LIBS='-Lc:/usr/lib -lgnutls ' configure:11782: checking for gnutls_certificate_set_verify_function configure:11782: gcc -I /c/emacs/mybranch/nt/inc -std=gnu99 -o conftest.exe -O0 -g3 -Ic:/usr/include -Ic:/usr/include/p11-kit-1 -mtune=pentium4 -DGLYPH_DEBUG=1 -Ic:/usr/include/noX -Ic:/usr/include conftest.c -Lc:/usr/lib -lgnutls >&5 configure:11782: $? = 0 configure:11782: result: yes Thank you so much for your help. -- Dani Moncayo