[Vm-dev] Squeak Windows built on Travis linux box

Ben Coman btc at openinworld.com
Wed Jan 9 16:40:47 UTC 2019


On Wed, 9 Jan 2019 at 18:38, Nicolas Cellier <
nicolas.cellier.aka.nice at gmail.com> wrote:

>
>
>
> Le mer. 9 janv. 2019 à 11:23, Fabio Niephaus <lists at fniephaus.com> a
> écrit :
>
>>
>> Hi,
>> On Wed, Jan 9, 2019 at 9:28 AM Tobias Pape <Das.Linux at gmx.de> wrote:
>>
>>>
>>> Hi,
>>>
>>> > On 09.01.2019, at 09:06, Craig Latta <craig at blackpagedigital.com>
>>> wrote:
>>> >
>>> >
>>> >
>>> > Hi Ben--
>>> >
>>> >> Just for the challenge of it...
>>> >>
>>> >> Following on from my experiment building a Windows hello-world on a
>>> >> Travis linux box, I had a go at building a Squeak-Windows VM on a
>>> >> Travis linux box.
>>> >>
>>> >> I'm pleased to report success.
>>> >
>>> >     Way cool!
>>> >
>>>
>>> Btw: Travis now also supports windows (early beta, tho):
>>> https://docs.travis-ci.com/user/reference/windows/
>>
>>
That is what actually kicked off this experiment.  The Travis Windows host
doesn't come with Cygwin pre-installed and installing it might take 10
minutes
and then I discovered mingw was pre-installed on their Ubuntu Xenial boxes,
so I thought it was worth a try.


>
>> That's very cool! Would you mind giving the new Windows builds on Travis
>> a go as well? It'd be fantastic if we could bring all CI builds together. I
>> don't know much about mingw compatibility, but I assume it's probably best
>> to build on Windows if possible?
>>
>
Before trying on Travis I got the the Windows build working locally on my
Win10 Windows Subsystem for Linux (Ubuntu Xenial) install.
Travis report that WSL will be preinstalled...
https://travis-ci.community/t/support-for-cygwin-or-wsl/440.
>From what I've read recently I don't think building on the Windows side
much advantage.
Under mingw is *still* a cross-compiling when you run it under Cygwin
shell, and mingw cross-compiling from a Ubuntu shell is no different.

The only impediment is that mingw-clang is not preinstalled on Travis Linux
box, which blocked me from building some of Pharo's third-party libs.
But I'm not sure the impact of that. Subsequently I read that clang was
fundamentally designed to cross compile from single binary
versus gcc producing a separate binary for each cross compiler.  So maybe
its just a matter of getting clang's --host & --target flags set right.
There are also some options like wclang to help. (
https://github.com/tpoechtrager/wclang)


>
> And if we want to run tests, we need a windows machine anyway, whatever
> the build infrastructure.
>
>
AFAIA tests are currently not being run Windows anyway ;)

But anyway, once the vm executable is created, it seems that can be invoked
from the WSL side. See "Windows <-> Linux Interop" here...
https://blogs.msdn.microsoft.com/commandline/2017/04/11/windows-10-creators-update-whats-new-in-bashwsl-windows-console/


So yes, I'd be glad dig into Windows boxen on Travis.
cheers -ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20190110/2e730435/attachment-0001.html>


More information about the Vm-dev mailing list