some issues with BuildSystem and LANG

Satish Balay balay at mcs.anl.gov
Wed Apr 29 12:58:52 CDT 2009


I guess somewhere in configure we should do:

os.setenv('LANG','en_US')
or use 'en_US.utf8'

The issues I don't know how to adress are:

- will this break some OS  where this is unknown..
- Do we have to use the same LANG in makefiles - during buildtime?

I guss - I can do the following to petsc-dev - and see if someone
complains..

diff -r f7644879c9e5 config/configure.py
--- a/config/configure.py	Tue Apr 28 16:06:47 2009 -0500
+++ b/config/configure.py	Wed Apr 29 12:56:45 2009 -0500
@@ -286,5 +286,6 @@
   move_configure_log(framework)
 
 if __name__ == '__main__':
+  os.setenv('LANG','en_US.utf8')
   petsc_configure([])
 

Satish


On Wed, 29 Apr 2009, Barry Smith wrote:

> 
>   I asked this before and never got a good answer.
> 
>    How come config/configure.py doesn't somehow turn on the LANG to english
> itself!!!!!
> When config/configure.py runs things it runs them in new subshells, there
> should be some
> way to make those new subshells have the LANG english.
> 
>    It is not reasonable that we'll handle messages in all languages!
> 
>   Barry
> 
> On Apr 29, 2009, at 10:31 AM, Matthew Knepley wrote:
> 
> > On Wed, Apr 29, 2009 at 10:19 AM, Lisandro Dalcin <dalcinl at gmail.com> wrote:
> > Today I had a hard time helping a student trying to build PETSc on a
> > Ubuntu box he has at home... For some unknow reason, the configure
> > step let pass '-PIC' as a valid GCC flag... The relevant parts of the
> > configure log are shown below... (the <...> represent uninteresting
> > output)
> > 
> > TEST checkPIC from
> > config.setCompilers(/home/nisi/petsc-3.0.0-p5/config/BuildSystem/config/setCompilers.py:807)
> > TESTING: checkPIC from
> > config.setCompilers(config/BuildSystem/config/setCompilers.py:807)
> > Determine the PIC option for each compiler
> >      - There needs to be a test that checks that the functionality
> > is actually working
> >       Pushing language C
> >     Trying C compiler flag -PIC
> > <.....>
> > sh: gcc  -o conftest  -PIC    conftest.o
> > Executing: gcc  -o conftest  -PIC    conftest.o
> > sh:
> > Possible ERROR while running linker: gcc: no se reconoce la opción '-PIC'
> > output: error message = {gcc: no se reconoce la opción '-PIC'
> > }
> > <.....>
> >       Valid C linker flag -PIC
> >     Adding C compiler flag -PIC
> > sh: gcc -c -o conftest.o  -PIC   conftest.c
> > Executing: gcc -c -o conftest.o  -PIC   conftest.c
> > sh:
> > Possible ERROR while running compiler: error message = {gcc: no se
> > reconoce la opción '-PIC'
> > }
> > <.....>
> > Added C compiler flag -PIC
> > 
> > What's going on?? My guess was that BuildSystem is not prepared for
> > Spanish words :-)
> > 
> > What a good guess this is exactly right. I will patch BuildSystem-dev now.
> > 
> > 
> > I asked the guy to start the whole process again, but this time begin doing:
> > 
> > $ export LANG=en_US.UTF-8
> > 
> > and now things worked out of the box...
> > 
> > Is this  issue documented somewhere? There is anything we can do to
> > improve this? What is the minimal Python version BuildSystem should
> > require? Scanning stdout/stderr for guessing failures is really
> > fragile...
> > 
> > You would think, but its not nearly as fragile as trusting a stupid
> > compiler. Compiler
> > people are the most stubborn jackasses in computing. They refuse to consider
> > anything
> > but
> > 
> >  1) command line input
> > 
> >  2) screen message output
> > 
> > Why bother with APIs when you can have text? No compiler that I know of
> > produces
> > error codes for warnings, including gcc, so we have no way other than
> > scanning the
> > output to determine what options are valid (certainly not an interface call
> > for this).
> > After working on this stuff for a few years, I really really hate people who
> > build compilers.
> > Some more than others, but all of them are bad.
> > 
> > Thanks for letting me have my rant time this morning,
> > 
> >   Matt
> > 
> > 
> > --
> > Lisandro Dalcín
> > ---------------
> > Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
> > Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
> > Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
> > PTLC - Güemes 3450, (3000) Santa Fe, Argentina
> > Tel/Fax: +54-(0)342-451.1594
> > 
> > 
> > 
> > -- 
> > What most experimenters take for granted before they begin their experiments
> > is infinitely more interesting than any results to which their experiments
> > lead.
> > -- Norbert Wiener
> 


More information about the petsc-dev mailing list