[Trilinos-Users] Cygwin Build Problems

Bartlett, Roscoe A rabartl at sandia.gov
Fri Jan 16 13:03:43 MST 2009


Michael,

I am surprised by all of these problems that you are having with building Trilinos on cygwin.  While I have been able to get this to work in the past with the packages that I build we don't really have official support for Cygwin at this point.  I don't think anyone really does any testing of Trilinos on cygwin before a release is put out.  None of our critical internal customers rely on cygwin so it is not a high priority.  Cygwin is more a convenience for developers who want to do a little work on their Windows machine.

Has anyone else on this list be able to get Trilinos 9.0 to build under cygwin?

Cheers,

- Ross



________________________________
From: trilinos-users-bounces at software.sandia.gov [mailto:trilinos-users-bounces at software.sandia.gov] On Behalf Of Michael Sielemann
Sent: Friday, January 16, 2009 9:43 AM
To: Bartlett, Roscoe A
Cc: Trilinos-Users at software.sandia.gov
Subject: Re: [Trilinos-Users] Cygwin Build Problems


Dear Ross,
I got a separate computer to do the tests I mentioned. It uses, just like my laptop, the Core 2 Duo platform. Is this possibly the reason for the trouble I am having (64 bit)? One of the other computers I tested earlier was a Centrino, however.

Just for the record:
1. Started Cygwin Setup 2.573.2.3
   Installation for current user only
   Unix file type
   Downloaded from mirror http://www.gtlib.gatech.edu
   List of packages is in the attached ZIP file (cygwin.packages.log)
2. Configured using do-configure-orig.sh as suggested
3. Log of configure, screen dump of configure and make are also included in the ZIP file.
4. Errors as reported before.

Best regards,

And have a great weekend,

Michael


On Thu, Jan 15, 2009 at 10:09 AM, Michael Sielemann <michael.sielemann at gmail.com<mailto:michael.sielemann at gmail.com>> wrote:
Dear Ross,
I am trying to get a separate Windows computer from our IT guys with only plain Windows installed (not the usual procedure of dumping some image with OS+software but formatting and installing from original media). Then, I'll try the standard procedure of building Trilinos. For that, I'd like to ask for your confirmation on the procedure I described earlier using the do-configure script shown below (your script minus some flags enabling packages that did not make it into the general release yet):

1. Install latest Cygwin with
     - Section 'devel': Adding several items by hand to the default such that the complete set ends up as

       autoconf wrapper scripts, autoconf 2.1, automake 1.5, binutils, cmake, doxygen, e2fsprogs, gcc-core, gcc-g++, gcc-g77, gcc-mingw-core, gcc-mingw-g++, gcc-mingw-g77, gettext, gtk2-x11, gtk-x11-runtime, libfpx-devel, libfreetype2, libgdbm-devel, libhdf5-devel, libhdf5-runtime, libiconv, lib-jasper-devel, liblcms-devel, libwmf-devel?!, libxml2, libxml-devel, make, mingw-runtime, pango, pango-runtime
     - Section 'math': The LAPACK package (includes BLAS)
     - All others left on default
2. In the Cygwin Bash Console, do the following

Admin at Laptop ~
$ cd /cygdrive/c/tmp/

Admin at Laptop /cygdrive/c/tmp
$ gunzip trilinos-9.0.2.tar.gz

Admin at Laptop /cygdrive/c/tmp
$ tar xf trilinos-9.0.2.tar

Admin at Laptop /cygdrive/c/tmp
$ cd trilinos-9.0.2

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2
$ mkdir cygwin_serial

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2
$ cd cygwin_serial/

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial
$ bash do-configure.sh

(...)

$ make everything

(...)


Thanks for your input,

Best regards MICHAEL


-----8<---------------------------------------------------------------------------------------------------------


#!/bin/sh
rm config.cache
../configure --prefix=/cygdrive/f/C_Sandbox/tribox/trilinoslib \
--cache-file=config.cache \
--with-install="/usr/bin/install -p" \
CXXFLAGS="-g -O0 -ansi -pedantic -Wall -fexceptions" \
CFLAGS="-g -O0 -ansi -pedantic -Wall -fexceptions" \
FFLAGS="-g -O0 " \
--enable-export-makefiles \
--with-gnumake \
--disable-default-packages \
--enable-teuchos --enable-teuchos-extended --enable-teuchos-debug --enable-teuchos-abc --disable-teuchos-blasfloat \
--enable-thyra \
--enable-epetra --enable-epetra-abc \
--enable-triutils --disable-triutils-tests --disable-triutils-examples \
--enable-epetraext \
--enable-amesos \
--enable-aztecoo \
--enable-belos \
--enable-ifpack \
--enable-ml \
--enable-nox --enable-nox-epetra --enable-nox-epetraext --enable-nox-thyra --enable-nox-thyra-tests --enable-nox-tests \
--enable-loca \
--enable-stratimikos \
--enable-rythmos \
--enable-moocho \
--enable-sacado \
--enable-meros \
--enable-new_package \
--enable-galeri \
--enable-isorropia \
--enable-moertel \
--enable-anasazi \
--enable-didasko


On Wed, Jan 14, 2009 at 3:44 PM, Michael Sielemann <michael.sielemann at gmail.com<mailto:michael.sielemann at gmail.com>> wrote:

Dear Ross,
Thanks for your reply and also for your interest.

Using the following GCC...

$ gcc -v
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with: /usr/build/package/orig/test.respin/gcc-3.4.4-3/configure --verbose --prefix=/usr --exec-prefix=/usr --
sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-langu

ages=c,ada,c++,d,f77,pascal,java,objc --enable-nls --without-included-gettext --enable-version-specific-runtime-libs --w
ithout-x --enable-libgcj --disable-java-awt --with-system-zlib --enable-interpreter --disable-libgcj-debug --enable-thre
ads=posix --enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions --enable-hash-synchronization --enabl
e-libstdcxx-debug
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)


...I compiled all package libraries successfully ('make -i') except Zoltan. Most warnings were regarding ISO C90 compatibility, implicit declarations, xyz will be initialized after abc, ISO C compatibility. I hope that this is expected in spite of supplying -ansi -pedantic. The actual errors are
http://pastebin.com/m26cf085c


Whenever I then try to build the tests or examples too many errors are reported. At some point I interrupt via Ctrl-C.

Tests via 'make -i tests':
http://pastebin.com/m19aeaac3


Examples via 'make -i examples':
http://pastebin.com/m205199a8

To me, Zoltan is not of primary interest but as building the examples and tests fails, too, I expect that the build is corrupted, too.

Even though I only have gcc, g++, g77 in exactly the same version in the present Cygwin installation (no 4.x versions or gfortran installed) I tried the --disable-fortran flag suggested earlier.

In this case I do get a warning from teuchos/configure and others but that seems to be related to Fortran and thus shouldn't be a problem.
checking for dgecon_... no
checking for dgecon_ in -llapack... yes
checking how to get verbose linking output from ... configure: WARNING: compilation failed

checking for Fortran 77 libraries of ...
checking for template-specific object files to be linked... none

In teuchos/config.log:
configure:16399: checking how to get verbose linking output from
configure:16415:  -c -g -O0  conftest.f >&5
../../../packages/teuchos/configure: line 16416: -c: command not found
configure:16421: $? = 127
configure: failed program was:
|       program main
|
|       end
configure:16502: WARNING: compilation failed
configure:16509: result:
configure:16511: checking for Fortran 77 libraries of
configure:16534: -o conftest.exe -g -O0 conftest.f
../../../packages/teuchos/configure: line 16535: -o: command not found
configure:16708: result:
configure:16740: checking for template-specific object files to be linked
configure:16743: result: none

I ran this one (without Fortran code) with 'make' only. I got the same error message on Zoltan as before and stopped.

I also tried downgrading to gcc 3.3.3-3. The error message was exactly the same as using 3.4.4-3.

This is very weird. Is it possible that one of the tools used in the configure / make scripts behaves differently in the latest Cygwin version?

I have lots of software on my computer that shows up in the environment variables under Cygwin (Services for Unix, Open Watcom installed by Maple, VS 8 etc.) that could potentially conflict with Cygwin/Gcc. Still, I reproduced the same error message on two other Windows computers (even one outside of our facility, DLR). So I expect that the source of the trouble is not the additional software. Just for fun I set PATH to only /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/bin:/usr/lib/lapack but nothing changed either. Once again, I got the strdup() undeclared error in some Zoltan code.

BTW, for each 'configure' and 'make' run I have always been deleting the whole build tree to avoid extra trouble.

Do you learn anything from all this?

Thanks again for your time and input,

Best regards,

Michael



On Tue, Jan 13, 2009 at 9:33 PM, Bartlett, Roscoe A <rabartl at sandia.gov<mailto:rabartl at sandia.gov>> wrote:
Michael,

This is very troubling.  I have never seen errors like this.

If you build with 'make -i everything' what packages build and which ones do not?

Cheers,

- Ross


________________________________
From: Michael Sielemann [mailto:michael.sielemann at gmail.com<mailto:michael.sielemann at gmail.com>]
Sent: Tuesday, January 13, 2009 7:47 AM
To: Trilinos-Users at software.sandia.gov<mailto:Trilinos-Users at software.sandia.gov>; Bartlett, Roscoe A

Subject: Re: [Trilinos-Users] Cygwin Build Problems




Dear Ross,
By now I did two successful builds on Linux (one on OpenSuse 10.2 and one on a Centos 5.2 node). But none on Cygwin. I tested on my laptop, a second laptop and my home computer, which has a pretty fresh Windows XP installation. They all failed. I made Cygwin installations as user and as admin, with all packages in section "devel" selected and with a hand-picked set only. I tried Trilinos versions 9.0.2 and 8.0.7.

I understand that you did not have any trouble with this so I would like to ask you whether I am missing out on a crucial step. This is what I do:
1. Install latest Cygwin with
     - All items in the devel section enabled ---or--- adding several items by hand to the default such that the complete set ends up as
       autoconf wrapper scripts, autoconf 2.1, automake 1.5, binutils, cmake, doxygen, e2fsprogs, gcc-core, gcc-g++, gcc-g77, gcc-mingw-core, gcc-mingw-g++, gcc-mingw-g77, gettext, gtk2-x11, gtk-x11-runtime, libfpx-devel, libfreetype2, libgdbm-devel, libhdf5-devel, libhdf5-runtime, libiconv, lib-jasper-devel, liblcms-devel, libwmf-devel!!, libxml2, libxml-devel, make, mingw-runtime, pango, pango-runtime
     - the LAPACK package from the math section (includes BLAS)
2. In the Cygwin Bash Console, do the following (this one is from my home computer)

Admin at Laptop ~
$ cd /cygdrive/c/tmp/

Admin at Laptop /cygdrive/c/tmp
$ gunzip trilinos-9.0.2.tar.gz

Admin at Laptop /cygdrive/c/tmp
$ tar xf trilinos-9.0.2.tar

Admin at Laptop /cygdrive/c/tmp
$ cd trilinos-9.0.2

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2
$ mkdir cygwin_serial

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2
$ cd cygwin_serial/

Admin at Laptop /cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial
$ bash do-configure.sh
rm: cannot remove `config.cache': No such file or directory

(...)

$ make everything

(...)

cc -DHAVE_CONFIG_H -I. -I../../src/include -I../../../../../packages/zoltan/src/
driver  -I/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages/zoltan/src/include
 -I/cygdrive/c/tmp/trilinos-9.0.2/packages/zoltan/src/include -I/cygdrive/c/tmp/
trilinos-9.0.2/packages/zoltan/siMPI/pyMPI/siMPI -I../../../../../packages/zolta
n/src/driver/ -I../../../../../packages/zoltan/src/ch/   -g -O0 -ansi -pedantic
-Wall -fexceptions -MT zCPPdrive-ch_input_read.o -MD -MP -MF .deps/zCPPdrive-ch_
input_read.Tpo -c -o zCPPdrive-ch_input_read.o `test -f '../../../../../packages
/zoltan/src/ch/ch_input_read.c' || echo '../../../../../packages/zoltan/src/driv
er/'`../../../../../packages/zoltan/src/ch/ch_input_read.c
mv -f .deps/zCPPdrive-ch_input_read.Tpo .deps/zCPPdrive-ch_input_read.Po
CC -DHAVE_CONFIG_H -I. -I../../src/include -I../../../../../packages/zoltan/src/
driver  -I/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages/zoltan/src/include
 -I/cygdrive/c/tmp/trilinos-9.0.2/packages/zoltan/src/include -I/cygdrive/c/tmp/
trilinos-9.0.2/packages/zoltan/siMPI/pyMPI/siMPI -I../../../../../packages/zolta
n/src/driver/ -I../../../../../packages/zoltan/src/ch/   -g -O0 -ansi -pedantic
-Wall -fexceptions -MT zCPPdrive-dr_mainCPP.o -MD -MP -MF .deps/zCPPdrive-dr_mai
nCPP.Tpo -c -o zCPPdrive-dr_mainCPP.o `test -f '../../../../../packages/zoltan/s
rc/driver/dr_mainCPP.cpp' || echo '../../../../../packages/zoltan/src/driver/'`.
./../../../../packages/zoltan/src/driver/dr_mainCPP.cpp
In file included from ../../../../../packages/zoltan/src/driver/dr_loadbal_const
.h:22,
                 from ../../../../../packages/zoltan/src/driver/dr_mainCPP.cpp:2
7:
/cygdrive/c/tmp/trilinos-9.0.2/packages/zoltan/src/include/zoltan_cpp.h: In memb
er function `int Zoltan::Generate_Files(std::string&, const int&, const int&, co
nst int&, const int&)':
/cygdrive/c/tmp/trilinos-9.0.2/packages/zoltan/src/include/zoltan_cpp.h:606: err
or: `strdup' undeclared (first use this function)
/cygdrive/c/tmp/trilinos-9.0.2/packages/zoltan/src/include/zoltan_cpp.h:606: err
or: (Each undeclared identifier is reported only once for each function it appea
$
make[5]: *** [zCPPdrive-dr_mainCPP.o] Error 1
make[5]: Leaving directory `/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages/
zoltan/src/driver'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages/
zoltan/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages/
zoltan'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages'

make[1]: *** [everything] Error 2
make[1]: Leaving directory `/cygdrive/c/tmp/trilinos-9.0.2/cygwin_serial/packages'

make: *** [everything] Error 2



Configure almost never complains about anything but during 'make' or 'make everything' the build process fails. GCC, G77, G++ are  3.4.4 as on your Cygwin, too.

siel_mi at rmlap069 /cygdrive/f/C_Sandbox/tribox/trilinos-9.0.2/Cygwin_serial
$ gcc --version
gcc (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Copyright (C) 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.


siel_mi at rmlap069 /cygdrive/f/C_Sandbox/tribox/trilinos-9.0.2/Cygwin_serial
$ g++ --version
g++ (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Copyright (C) 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.


siel_mi at rmlap069 /cygdrive/f/C_Sandbox/tribox/trilinos-9.0.2/Cygwin_serial
$ g77 --version
GNU Fortran (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Copyright (C) 2004 Free Software Foundation, Inc.

GNU Fortran comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of GNU Fortran
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING
or type the command `info -f g77 Copying'.

Below, I am sending you the do-configure script I am using, which is essentially yours after removing some --enable-xyz's for packages that I think are not included in the general release.

I also tried several modifications. This one is my favorite error message

/cygdrive/f/C_Sandbox/tribox/trilinos-9.0.2/Cygwin_serial/packages/teuchos/example/BLAS/../../../../../packages/teuchos/
example/BLAS/cxx_main.cpp:18: undefined reference to `std::cout'

As you mentioned that you never had any trouble I am wondering what I am doing wrong repeatedly. And I hope that you have some hints for me.

Thanks in advance, and best regards MICHAEL


-----8<---------------------------------------------------------------------------------------------------------


#!/bin/sh
rm config.cache
../configure --prefix=/cygdrive/f/C_Sandbox/tribox/trilinoslib \
--cache-file=config.cache \
--with-install="/usr/bin/install -p" \
CXXFLAGS="-g -O0 -ansi -pedantic -Wall -fexceptions" \
CFLAGS="-g -O0 -ansi -pedantic -Wall -fexceptions" \
FFLAGS="-g -O0 " \
--enable-export-makefiles \
--with-gnumake \
--disable-default-packages \
--enable-teuchos --enable-teuchos-extended --enable-teuchos-debug --enable-teuchos-abc --disable-teuchos-blasfloat \
--enable-thyra \
--enable-epetra --enable-epetra-abc \
--enable-triutils --disable-triutils-tests --disable-triutils-examples \
--enable-epetraext \
--enable-amesos \
--enable-aztecoo \
--enable-belos \
--enable-ifpack \
--enable-ml \
--enable-nox --enable-nox-epetra --enable-nox-epetraext --enable-nox-thyra --enable-nox-thyra-tests --enable-nox-tests \
--enable-loca \
--enable-stratimikos \
--enable-rythmos \
--enable-moocho \
--enable-sacado \
--enable-meros \
--enable-new_package \
--enable-galeri \
--enable-isorropia \
--enable-moertel \
--enable-anasazi \
--enable-didasko






_______________________________________________
Trilinos-Users mailing list

Trilinos-Users at software.sandia.gov<mailto:Trilinos-Users at software.sandia.gov>
http://software.sandia.gov/mailman/listinfo/trilinos-users



_______________________________________________
Trilinos-Users mailing list
Trilinos-Users at software.sandia.gov<mailto:Trilinos-Users at software.sandia.gov>
http://software.sandia.gov/mailman/listinfo/trilinos-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://software.sandia.gov/mailman/private/trilinos-users/attachments/20090116/673076ea/attachment-0001.html 


More information about the Trilinos-Users mailing list