[Mono-dev] Building mono on Windows issues.

Alex J Lennon ajlennon at dynamicdevices.co.uk
Sat Oct 18 17:35:44 UTC 2014


Hi Mladen,

On 17/10/2014 16:25, Alex J Lennon wrote:
> On 17/10/2014 16:07, Alex J Lennon wrote:
>> On 17/10/2014 09:09, Mladen Mihajlovic wrote:
>>> Hey Alex
>>>
>>> There's a lot that you can do through their yml settings file.
>>> Download and setup pretty much anything. Have a look in the root if
>>> the repo: appveyor.yml.
>>>
>> Hi Mladen,
>>
>> I like the look of Appveyor a lot. Thanks for that.
>>
>> I've been getting going with the configuration file and in parallel
>> testing the 3.10.0 release builds locally under cygwin
>> as a sanity check and because each time I test a build with AppVeyor it
>> starts from a clean OS image (not a bad thing)
>> which means it takes a long time to clone the Mono repo before the build
>> starts.
>>
>> Unfortunately the Windows build of release 3.10.0 fails locally:
>>
>> libtool: compile:  i686-pc-mingw32-gcc -DHAVE_CONFIG_H -I. -I../..
>> -I../.. -I../../mono -I../../libgc/include -I../../eglib/src
>> -I../../eglib/src -DWINVER=0x0502 -D_WIN32_WINNT=0x0502
>> -D_WIN32_IE=0x0501 -D_UNICODE -DUNICODE -DWIN32_THREADS
>> -DFD_SETSIZE=1024 -g -O2 -fno-strict-aliasing -fwrapv
>> -Wdeclaration-after-statement -Wno-unused-but-set-variable -g -Wall
>> -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes
>> -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual
>> -Wwrite-strings -Wno-switch -Wno-switch-enum -Wno-unused-value
>> -mno-tls-direct-seg-refs -Werror-implicit-function-declaration -MT
>> sha1.lo -MD -MP -MF .deps/sha1.Tpo -c sha1.c  -DDLL_EXPORT -DPIC -o
>> .libs/sha1.o
>> In file included from sha1.c:20:0:
>> ./sha1.h:25:1: error: expected '=', ',', ';', 'asm' or '__attribute__'
>> before 'void'
>> sha1.c:46:1: error: expected '=', ',', ';', 'asm' or '__attribute__'
>> before 'typedef'
>> sha1.c: In function 'SHA1Transform':
>> sha1.c:71:2: error: 'CHAR64LONG16' has no member named 'l'
>>
> It looks like perhaps the mono-3.10.0-branch needs Vincent's commit
> cherry-picking
>
> "Use G_BEGIN_DECLS instead of __BEGIN_DECLS."
>
> https://github.com/mono/mono/commit/3c920be3e534c8c2d51695f16055e84936fe761e
>
> How would we go about flagging that up with somebody to ask them to look
> into it?
>
> Regards,
>
> Alex

Well I've made a certain amount of progress with Appveyor, and I like it, but I'm going around in circles with a strange problem.

When I get to the end of the autoconf stage under Cygwin it kicks off the configure script and early on in that I get this every time:

Skipping configure process.
Done running eglib/autogen.sh ...
Running ./configure --enable-maintainer-mode --enable-compile-warnings --prefix=/cygdrive/c/monoinstall --with-preview=yes ...
./configure: line 571: 0: Bad file descriptor

I've tried a range of different permutations but the error is always the same.

The Appveyor VM image is locked down from what I can see so I can't get in there to work out why it is failing, although it
seems to be on this line in the configure script

test -n "$DJDIR" || exec 7<&0 </dev/null

After exhausting a range of other options I set up a Windows Server 2012 image in Azure, which seems to be what Appveyor is using,
followed the steps to download Cygwin manually, and ran up autoconf.

Annoyingly, when I do this the configure step works.

So I am at a bit of a loss...

The only other "funny" which might be related is that earlier on at the end of the automated Cygwin install step we see the following, and I'm wondering if that's somehow related...

setup.exe -qnNdO -R "%CYG_ROOT%" -s "%CYG_MIRROR%" -l "%CYG_CACHE%" -P autoconf -P automake -P bison -P gcc-core -P gcc-g++ -P mingw-gcc -P libtool -P make -P python > NUL
error: unknown (or unsupported) file type `x'
error: unknown (or unsupported) file type `x'
error: unknown (or unsupported) file type `x'

Any thoughts?

Regards,

Alex





More information about the Mono-devel-list mailing list