Re: [AMBER-Developers] AT compilation error

From: Jason Swails <jason.swails.gmail.com>
Date: Wed, 10 Mar 2010 23:57:42 -0500

On Wed, Mar 10, 2010 at 10:46 PM, InSuk Joung <i.joung.gmail.com> wrote:
> configure was actually rerun after installing flex so 'flex' check passed.
> Now I tried to uninstall flex and then it gives a warning.  I maybe ignored
> the message before.
>
> If the script is in bash, why can't it be '/bin/bash' or '/usr/bin/env bash'
> ?

Because that makes the assumption that every system has bash, which is
not necessarily true apparently. sh is more ubiquitous, and configure
has been fixed for the released version (configure_temp). If you want
to make it sh-compliant, replace == by =, [[ by [, ]] by ], and || by
-o . Those substitutions makes it work with dash just fine.

Another common thing you'll see is "Bad fd number" which results from
dash not understanding >&, which is used in bash to redirect the
stderr stream to stdout. In sh this is done with 2>&1 . I've found
that several other unix packages have scripts coded for bash that
invoke sh, and those are common errors to run into. You could always
replace /bin/sh with a link to /bin/bash instead of dash...

>
> On Wed, Mar 10, 2010 at 10:02 PM, Jason Swails <jason.swails.gmail.com>wrote:
>
>> On Wed, Mar 10, 2010 at 9:11 PM, InSuk Joung <i.joung.gmail.com> wrote:
>> > I had weird errors(?) when running configure.
>> > I guess they are probably related.
>> >
>> > Regarding 'm4', I found that netcdf uses it.
>> >
>> > Setting AMBERHOME to /home/isjoung/AMBER/amber11
>> >
>> > ./configure: 363: [[: not found
>> > ./configure: 363: no: not found
>> > ./configure: 363: no: not found
>> >
>> > Obtaining the gnu suite version:
>> >      gcc -v
>> > The version is 4.4.1
>> > ./configure: 697: [[: not found
>> > ./configure: 697: no: not found
>> > ./configure: 697: no: not found
>> > [: 697: no: unexpected operator
>> > [: 697: no: unexpected operator
>> >
>> > Testing the gcc compiler:
>> >     gcc  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -o testp testp.c
>> > OK
>> >
>> > Validating the C++ compiler version:
>> >     g++ -v
>> > The version is 4.4.1
>> > OK
>> >
>> > Testing the gfortran compiler:
>> >     gfortran -O0 -o testp testp.f
>> > OK
>> >
>> > Testing mixed C/Fortran compilation:
>> >     gcc  -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -c -o testp.c.o
>> testp.c
>> >     gfortran -O0 -c -o testp.f.o testp.f
>> >     gcc -o testp testp.c.o testp.f.o -lgfortran
>> > OK
>> >
>> > Testing flex:
>> > OK
>> >
>> > Configuring NetCDF; (may be time-consuming)
>> >
>> >    NetCDF configure succeeded.
>> >
>> > Configuring fftw-2.1.5; (may be time-consuming)
>> >
>> >    fftw-2.1.5 configure succeeded.
>> >
>> > The configuration file, config.h, was successfully created.
>> >
>> > ./configure: 1311: [[: not found
>> > ./configure: 1311: no: not found
>> > ./configure: 1311: no: not found
>> > The next step is to type 'make -f Makefile_at'
>> >
>>
>> These errors are a result of non-sh-compliance of the configure
>> script.  configure invokes /bin/sh as the interpreter shell which is
>> almost always bash for most systems.  Ubuntu, however, uses dash as
>> its default sh, a topic that has been discussed here a bit.  These
>> errors were brought up in a fairly recent post
>> http://dev-archive.ambermd.org/201003/0166.html .  What's surprising
>> to me is that "testing flex" returned OK when your system didn't have
>> it...
>>
>> >
>> >
>> > On Wed, Mar 10, 2010 at 4:17 PM, case <case.biomaps.rutgers.edu> wrote:
>> >
>> >> On Wed, Mar 10, 2010, InSuk Joung wrote:
>> >>
>> >> > I found that 'flex' was not installed in my system.  I installed
>> 'flex'
>> >> and
>> >> > re-compiled AT.  Then, everything was fine.
>> >> > However, I think it would be a better way to give a warning in the
>> >> > configuration step.
>> >>
>> >> It's is *supposed* to do exactly that.  Can you move flex out of the way
>> >> (so that it is not found) and try to debug why the section in configure
>> "
>> >> Test
>> >> if lex/flex is available and works" (starting about line 933 of
>> configure)
>> >> is not failing.
>> >>
>> >> > Same to 'm4' although this gave me a obvious error message during
>> >> > compilation.
>> >>
>> >> What step needs m4?  Should we put in a configure test for that as well
>> as
>> >> for
>> >> flex?
>> >>
>> >> ...thx...dac
>> >>
>> >>
>> >> _______________________________________________
>> >> AMBER-Developers mailing list
>> >> AMBER-Developers.ambermd.org
>> >> http://lists.ambermd.org/mailman/listinfo/amber-developers
>> >>
>> >
>> >
>> >
>> > --
>> > Best,
>> > InSuk Joung
>> > _______________________________________________
>> > AMBER-Developers mailing list
>> > AMBER-Developers.ambermd.org
>> > http://lists.ambermd.org/mailman/listinfo/amber-developers
>> >
>>
>>
>>
>> --
>> ---------------------------------------
>> Jason M. Swails
>> Quantum Theory Project,
>> University of Florida
>> Ph.D. Graduate Student
>> 352-392-4032
>>
>> _______________________________________________
>> AMBER-Developers mailing list
>> AMBER-Developers.ambermd.org
>> http://lists.ambermd.org/mailman/listinfo/amber-developers
>>
>
>
>
> --
> Best,
> InSuk Joung
> _______________________________________________
> AMBER-Developers mailing list
> AMBER-Developers.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber-developers
>



-- 
---------------------------------------
Jason M. Swails
Quantum Theory Project,
University of Florida
Ph.D. Graduate Student
352-392-4032
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Wed Mar 10 2010 - 21:00:02 PST
Custom Search