Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: "Dave Korn" To: Subject: Problems building setup from CVS. Date: Tue, 28 Sep 2004 12:01:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-ID: X-OriginalArrivalTime: 28 Sep 2004 11:01:04.0829 (UTC) FILETIME=[72F8D6D0:01C4A54A] Hey all, The subject says it all. Are there any requirements that I don't know about for say particular versions of automake/autoconf? It says at http://sources.redhat.com/cygwin-apps/setup.html "This requires the Cygwin development automake/autoconf and libtool packages (from the Cygwin Net Release). (Or equivalently patched versions on linux or other platforms.)" Well, I'm not sure what's in the cygwin net release, nor what kind of patchset would be 'equivalent' in those terms. I've got these versions of automake/autoconf, which are I believe the current cygwin release versions: ------------------------------------------------------------ dk AT mace /usr/build/apps/setup> autoconf --version autoconf (GNU Autoconf) 2.59 Written by David J. MacKenzie and Akim Demaille. Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. dk AT mace /usr/build/apps/setup> automake --version automake (GNU automake) 1.9.1 Written by Tom Tromey . Copyright 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ------------------------------------------------------------ and I see these warnings when I run bootstrap.sh: ------------------------------------------------------------ dk AT mace /usr/build/apps/setup> ./bootstrap.sh Running bootstrap.sh in libgetopt++ /usr/share/aclocal/freetype2.m4:7: warning: underquoted definition of AC_CHECK_FT2 run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /usr/share/aclocal/check.m4:5: warning: underquoted definition of AM_PATH_CHECK configure.in: installing `cfgaux/install-sh' configure.in: installing `cfgaux/missing' Makefile.am: installing `cfgaux/depcomp' Autotool bootstrapping complete. Continuing with bootstrap in current directory /usr/share/aclocal/freetype2.m4:7: warning: underquoted definition of AC_CHECK_FT2 run info '(automake)Extending aclocal' or see http://sources.redhat.com/automake/automake.html#Extending-aclocal /usr/share/aclocal/check.m4:5: warning: underquoted definition of AM_PATH_CHECK configure.in: installing `cfgaux/install-sh' configure.in: installing `cfgaux/missing' tests/Makefile.am: installing `cfgaux/depcomp' Makefile.am: installing `cfgaux/compile' Autotool bootstrapping complete. ------------------------------------------------------------ I don't see any problems (or indeed any output whatsoever!) when I then run autoconf and automake. I use the standard recommended configure options: ------------------------------------------------------------ dk AT mace /usr/build/obj-apps> ../apps/setup/configure -C --enable-dependencies - -disable-shared --host=i686-pc-mingw32 --build=i686-pc-cygwin 'CC=gcc -mno-cygw in' 'CXX=g++ -mno-cygwin' --enable-maintainer-mode 2>&1 | tee conf.log ------------------------------------------------------------ and see one suspicious thing during configure: when it goes to configure in libgetopt++, there's something a bit suspiciously printf-y.... ------------------------------------------------------------ configure: creating ./config.status config.status: creating Makefile config.status: executing depfiles commands configure: configuring in libgetopt++ configure: running /bin/bash '../../apps/setup/libgetopt++/configure' --prefix=/ usr/local '-C' '--enable-dependencies' '--disable-shared' '--host=i686-pc-mingw 32' '--build=i686-pc-cygwin' 'CC=gcc -mno-cygwin' 'CXX=g++ -mno-cygwin' '--enabl e-maintainer-mode' 'build_alias=i686-pc-cygwin' 'host_alias=i686-pc-mingw32' --c ache-file=../config.cache --srcdir=../../apps/setup/libgetopt++ configure: loading cache ../config.cache ------------------------------------------------------------ checking for ld used by gcc -mno-cygwin... ../../apps/setup/libgetopt++/configur e: line 1: s%\\%/%g: No such file or directory (cached) /usr/i686-pc-mingw32/bin/ld.exe checking if the linker (/usr/i686-pc-mingw32/bin/ld.exe) is GNU ld... (cached) y es checking for /usr/i686-pc-mingw32/bin/ld.exe option to reload object files... (c ached) -r ------------------------------------------------------------ Anyway, configure completes, and I go to build, and then two things happen. One is that when make enters any of the subdirectories, I see something like this: ------------------------------------------------------------ make all-recursive make[1]: Entering directory `/usr/build/obj-apps' Making all in bz2lib make[2]: Entering directory `/usr/build/obj-apps/bz2lib' cd ../../apps/setup/bz2lib && /bin/bash /usr/build/apps/setup/cfgaux/missing -- run automake-1.8 --foreign /usr/build/apps/setup/cfgaux/missing: line 52: automake-1.8: command not found WARNING: `automake-1.8' is missing on your system. You should only need it if you modified `Makefile.am', `acinclude.m4' or `configure.in'. You might want to install the `Automake' and `Perl' packages. Grab them from any GNU archive site. cd . && /bin/bash ./config.status Makefile depfiles config.status: creating Makefile config.status: executing depfiles commands make[2]: Leaving directory `/usr/build/obj-apps/bz2lib' ------------------------------------------------------------ and the other is that the final link fails badly: ------------------------------------------------------------ /bin/bash ./libtool --mode=link --tag=CXX g++ -mno-cygwin -Werror -Wall -Wpointe r-arith -Wcomments -Wcast-align -Wwrite-strings -g -O2 -o setup.exe -mwindows AntiVirus.o archive.o archive_tar.o archive_tar_file.o autoload.o category.o cho ose.o cistring.o compress.o compress_bz.o compress_gz.o ConnectionSetting.o Cont rolAdjuster.o cygpackage.o desktop.o dialog.o diskfull.o download.o Exception.o find.o FindVisitor.o FilterVisitor.o filemanip.o fromcwd.o geturl.o hash.o ini.o IniDBBuilder.o IniDBBuilderPackage.o iniparse.o IniParseFeedback.o IniParseFind Visitor.o install.o io_stream.o io_stream_cygfile.o io_stream_file.o io_stream_m emory.o localdir.o log.o LogFile.o LogSingleton.o main.o md5.o MD5++.o mkdir.o m klink2.o mount.o msg.o net.o netio.o nio-ie5.o nio-file.o nio-ftp.o nio-http.o p ackage_db.o package_meta.o package_source.o package_version.o PackageSpecificati on.o PickCategoryLine.o PickLine.o PickPackageLine.o PickView.o postinstall.o pr oppage.o propsheet.o rfc1738.o root.o ScanFindVisitor.o script.o setup_version.o simpsock.o site.o source.o SourceSetting.o splash.o state.o String++.o threebar .o UserSetting.o UserSettings.o version.o win32.o window.o warnonly-inilex.o res .o zlib/libzcygw.a bz2lib/libbz2.a libgetopt++/libgetopt++.la -luser32 -lkernel3 2 -lcomctl32 -lole32 -lwsock32 -lnetapi32 -ladvapi32 -luuid -lmingw32 mkdir .libs g++ -mno-cygwin -Werror -Wall -Wpointer-arith -Wcomments -Wcast-align -Wwrite-st rings -g -O2 -o setup.exe -mwindows AntiVirus.o archive.o archive_tar.o archive_ tar_file.o autoload.o category.o choose.o cistring.o compress.o compress_bz.o co mpress_gz.o ConnectionSetting.o ControlAdjuster.o cygpackage.o desktop.o dialog. o diskfull.o download.o Exception.o find.o FindVisitor.o FilterVisitor.o fileman ip.o fromcwd.o geturl.o hash.o ini.o IniDBBuilder.o IniDBBuilderPackage.o inipar se.o IniParseFeedback.o IniParseFindVisitor.o install.o io_stream.o io_stream_cy gfile.o io_stream_file.o io_stream_memory.o localdir.o log.o LogFile.o LogSingle ton.o main.o md5.o MD5++.o mkdir.o mklink2.o mount.o msg.o net.o netio.o nio-ie5 .o nio-file.o nio-ftp.o nio-http.o package_db.o package_meta.o package_source.o package_version.o PackageSpecification.o PickCategoryLine.o PickLine.o PickPacka geLine.o PickView.o postinstall.o proppage.o propsheet.o rfc1738.o root.o ScanFi ndVisitor.o script.o setup_version.o simpsock.o site.o source.o SourceSetting.o splash.o state.o String++.o threebar.o UserSetting.o UserSettings.o version.o wi n32.o window.o warnonly-inilex.o res.o zlib/libzcygw.a bz2lib/libbz2.a libgetop t++/.libs/libgetopt++.a -luser32 -lkernel32 -lcomctl32 -lole32 -lwsock32 -lnetap i32 -ladvapi32 -luuid -lmingw32 /usr/lib/w32api/libadvapi32.a(dspes00177.o)(.text+0x0): multiple definition of ` _FreeSid AT 4' autoload.o(.data+0x16b):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here /usr/lib/w32api/libadvapi32.a(dspes00026.o)(.text+0x0): multiple definition of ` _AllocateAndInitializeSid AT 44' autoload.o(.data+0x149):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here /usr/lib/w32api/libadvapi32.a(dspes00253.o)(.text+0x0): multiple definition of ` _InitializeAcl AT 12' autoload.o(.data+0x17c):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here /usr/lib/w32api/libadvapi32.a(dspes00013.o)(.text+0x0): multiple definition of ` _AddAccessAllowedAce AT 16' autoload.o(.data+0x12c):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here /usr/lib/w32api/libadvapi32.a(dspes00357.o)(.text+0x0): multiple definition of ` _OpenProcessToken AT 12' autoload.o(.data+0x193):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here /usr/lib/w32api/libadvapi32.a(dspes00479.o)(.text+0x0): multiple definition of ` _SetTokenInformation AT 16' autoload.o(.data+0x1ad):/usr/build/obj-apps/../apps/setup/autoload.c:83: first d efined here collect2: ld returned 1 exit status make[2]: *** [setup.exe] Error 1 make[2]: Leaving directory `/usr/build/obj-apps' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/build/obj-apps' make: *** [all] Error 2 ------------------------------------------------------------ So, could someone who's built it before tell me if those automake-1.8 warnings are significant, and/or is automake-1.9.1 backwardly compatible enough I can just provide a symlink to it called 'automake-1.8' to fake out the configure? And why would an app want to both link against the static import libs *and* try to autoload functions? I was able to work round the link error by removing the extra entries from autoload.c: ------------------------------------------------------------ Index: autoload.c =================================================================== RCS file: /cvs/cygwin-apps/setup/autoload.c,v retrieving revision 2.5 diff -p -u -r2.5 autoload.c --- autoload.c 30 Aug 2004 16:17:52 -0000 2.5 +++ autoload.c 28 Sep 2004 10:55:30 -0000 @@ -48,12 +48,6 @@ Auto (wininet, HttpSendRequestA, 20); DLL (advapi32); -Auto (advapi32, AddAccessAllowedAce, 16); -Auto (advapi32, AllocateAndInitializeSid, 44); -Auto (advapi32, FreeSid, 4); -Auto (advapi32, InitializeAcl, 12); -Auto (advapi32, OpenProcessToken, 12); -Auto (advapi32, SetTokenInformation, 16); Auto (advapi32, OpenSCManagerA, 16); Auto (advapi32, CloseServiceHandle, 4); Auto (advapi32, OpenServiceA, 16); ------------------------------------------------------------ So have I got some kind of version skew problem here? cheers, DaveK -- Can't think of a witty .sigline today.... -- 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/