Oopsy with Windows 10 - Problems compiling Multi-App (or compilation at all)

Hi all, this is the answer, not the question. Maybe it can help someone.

I installed the software and added it to the Windows PATH-Variable as descibed here:

But Oopsy (which is the script oopsy.js in “Max 8\Packages\oopsy\source”) only generated the *cpp and the Makefile in the build directory", no binary.
“make” executed in git Bash just worked. So I changed some lines in oopsy.js and everything works fine on my system.

In oopsy.js, line 249:

if (os.platform() == “win32”) {
// Don’t use make clean, as rm is not default on Windows

I commented out the try-catch block and simply replaced it with

console.log(execSync(“make clean”, { cwd: build_path }).toString())
console.log(execSync(“make”, { cwd: build_path }).toString())

Thats it.
There was a problem with line termination: the script parses the Makefile for “\r\n” (CRLF on Windows Systems), but the Makefile generated on my sytem has Unix-line-endings “\n”.
Why is the Makefile executed line by line? The toolchain setup (Wiki) works fine.

Thank you for your time.
Great product!

Is that a rhetorical question?

IIRC that was changed because before that we were having trouble getting the makefile commands to work properly on Windows.

The windows build workflow was tested by @shensley – perhaps with the new build tools this workaround isn’t needed anymore?

Indeed.

Originally, the wiki pointed to the GnuWin32 install of Make. This version did not function properly when executed from shells like cmd.exe (command prompt) or powershell. In order for that version to work correctly when invoked from node (which runs it as though it were run by cmd.exe), it had to essentially run in silent mode, and pipe each command through to the shell.

I have actually seen mixed success with the updated wiki entry for the cygwin version. It seems to work for anyone who’s installed it, but I’ve also heard from people that it’s missing from the package. That said, from what I’ve heard it works from all shells, and would make this workaround unnecessary.

The version of make distributed through chocolately also seems to work in all cases.

We are currently putting together a somewhat distributable form of the toolchain (all of the tools for windows, and the arm-toolchain for mac). That should greatly simplify the process of hunting up the proper tools, especially on Windows.

So once that is ready, and our wiki has been updated we’ll remove the workaround from oopsy because it shouldn’t be needed anymore.