Le 11/02/2011 21:07, Glenn Fowler a écrit :
can you try a build with one of the locales that failed
but first edit
        src/cmd/INIT/package.sh
        bin/package
and change the line
        LC_ALL=C
to
        LC_ALL=C
        export LC_ALL
this would be a build workaround
I still need to check why there are failures for other locales

done

Hi,

I'm back...

so, I've upgraded to cygwin 1.7.8 for a while and the builds seem to work much better than ever :-)
well, it depends on which environment variables are set...

the major drawback is that if NPROC > 1, all builds fails the same way whatever the environment variables.

have tried the following builds :

LANG=en_US.UTF-8 by default, LC_ALL isn't set, NPROC defaults to 4.

1/ LANG=C.UTF-8 LC_ALL=C.UTF-8 bin/package make
2/ LC_ALL=C.UTF-8 ...
3/ LC_ALL=en_US.UTF-8 ...
4/ export LANG=C and LC_ALL=C in bin/package and src/cmd/INIT/package.sh
5/ export LANG=C.UTF-8 and LC_ALL=C.UTF-8 ...

ditto, NPROC=1

11..55 == 1..5
66/ 5+1
77/ NPROC=1 bin/package make

results :

1..5 break on cannot send action to coshell or lost contact with coshell (i.e. NPROC > 1)
maybe this is related on
44/55/77 break on regular expression..out of space (i.e. patching the package command doesn't suffice bcoz of the calling environment) 11...33/66 build almost all except cmd/kshlib/dbm_t, cmd/kshlib/dss and cmd/kshlib/open

v2$ uname -a
CYGWIN_NT-6.0 pcvista 1.7.8(0.236/5/3) 2011-03-01 09:36 i686 Cygwin

still vista

v2$ gcc --version
gcc (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)

still 3.4.4

v2$ bin/ksh -c 'echo ${.sh.version}'
Version JM 93u 2011-02-08

v2$ bin/ksh -c 'type ls'
ls is a tracked alias for /usr/bin/ls

v2$ bin/ksh -c ls
arch  bin  fun  include  lib  man  README  share  src

yeah... no more permission denied !

v2$ bin/package use

v2$ type ls
ls is a tracked alias for /opt/ast-2011-02-08/arch/cygwin.i386/bin/ls

v2$ ls
README  arch  bin  fun  include  lib  man  share  src

yeah again !

v2$ ldd bin/ksh
        ntdll.dll => /cygdrive/c/Windows/system32/ntdll.dll (0x777f0000)
kernel32.dll => /cygdrive/c/Windows/system32/kernel32.dll (0x76b50000)
        cygwin1.dll => /usr/bin/cygwin1.dll (0x61000000)
ADVAPI32.DLL => /cygdrive/c/Windows/system32/ADVAPI32.DLL (0x76ff0000)
        RPCRT4.dll => /cygdrive/c/Windows/system32/RPCRT4.dll (0x775e0000)
Secur32.dll => /cygdrive/c/Windows/system32/Secur32.dll (0x75e10000)

oops! static build ? in other words, why the following line is used :

cc -O -o ksh pmain.o libshell.a ../../../lib/libdll.a ../../../lib/libcoshell.a ../../../lib/libcmd.a ../../../lib/libast.a /usr/lib/libiconv.a

instead of something like :

cc -O -o ksh pmain.o libshell.a /opt/ast-2011-02-08/bin/cygdll10.dll ../../../lib/libcoshell.a /opt/ast-2011-02-08/bin/cygcmd12.dll /opt/ast-2011-02-08/bin/cygast54.dll /bin/cygiconv-2.dll

v2$ ldd ksh
        ntdll.dll => /cygdrive/c/Windows/system32/ntdll.dll (0x777f0000)
kernel32.dll => /cygdrive/c/Windows/system32/kernel32.dll (0x76b50000)
        cygwin1.dll => /usr/bin/cygwin1.dll (0x61000000)
ADVAPI32.DLL => /cygdrive/c/Windows/system32/ADVAPI32.DLL (0x76ff0000)
        RPCRT4.dll => /cygdrive/c/Windows/system32/RPCRT4.dll (0x775e0000)
        cygast54.dll => /opt/ast-2011-02-08/bin/cygast54.dll (0x66e80000)
        cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x674c0000)
        cyggcc_s-1.dll => /usr/bin/cyggcc_s-1.dll (0x6bf40000)
        cygcmd12.dll => /opt/ast-2011-02-08/bin/cygcmd12.dll (0x69240000)
        cygdll10.dll => /opt/ast-2011-02-08/bin/cygdll10.dll (0x6a2c0000)
Secur32.dll => /cygdrive/c/Windows/system32/Secur32.dll (0x75e10000)

PS : builds fail if the underlying path contains variable like component, ex. : /opt/ast-2011-02-08_LANG=C.UTF-8_LC_ALL=C.UTF-8_NPROC=1
the reason I named them /opt/ast-2011-02-08.1, etc.

Regards,

Cyrille Lefevre
--
mailto:[email protected]





_______________________________________________
ast-users mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-users

Reply via email to