MOE on Windows - prerequisites

Continuing the discussion from Problem with iOS simulator:

Hello, I’m trying to use MOE on Windows and I’m a little bit confused.
kisg said:

If you are on Windows, you need to use a real device and you need a Mac accessible by SSH to run the remote build. When the build is completed, the app is copied back to the Windows machine, and uploaded to a connected device (iPad or iPhone).

On the other hand, in the Intel page about MOE (https://software.intel.com/en-us/node/633228), in the “Prerequisites for a Windows host” section, I read:

A computer running Windows 7* OS x64 edition or higher
Oracle Java* Development Kit (JDK) version 8
Google Android Studio 1.2 or higher
Android SDK with API level 9 or higher
Apple iTunes* for Windows
Enrollment in the Apple Developer Program (required for iOS device support)

My questions: in a Windows environment is mandatory a Mac accessible by SSH?
Is the iOS simulator available for Windows?

Thanks in advance.

Andrea

Hey Andrea,

It has - so far - never been possible to build for iOS/MacOS without being on MacOS. So you indeed do need a Mac available for build reasons, but the development can always be done on Windows (or Linux, or Mac…) As far as I know there also is no simulator for Windows yet.

The good thing is that it’s not expensive to set up a build machine: about 500 bucks for a Mac Mini which you can use to build.

Hope that helped,
Bart

Hello Velocity,
thank you for the reply.
Since is mandatory to have a Mac, the idea of using MOE is unfeasable for me. So, I’ll consider to use other frameworks.

Andrea

Dear Andrea,

to extend a bit on Bart’s answer:

  1. The Intel page is totally outdated now, and no longer relevant. Back before Intel released MOE as open-source, they offered a cloud build functionality, so it was possible to build using Intel’s cloud without a Mac. This functionality was removed from MOE prior to open-sourcing.
  2. You may develop using MOE from a Mac or Windows.
  3. Windows has a few limitations: you need SSH access to a remote Mac machine to perform builds. Also, you cannot use Xcode to design your UIs (unless you are willing to access the remote Mac over VNC, and use Xcode remotely)
  4. Windows also does not have iOS simulator, but you can launch and debug your apps on a real device connected to your Windows PC.

If you have any more questions, don’t hesitate to ask, we are happy to help.

Best Regards,
Gergely

Dear Gergely,
thank you for the full clarification.
Unfortunately, as I said before, at this moment I can’t consider to buy a Mac for performing build. I’m looking for a lighter solution.

Andrea

Dear Andrea,

There are a couple options:

  • You could try a cloud hosted mac service, like MacInCloud or Xcloud.me. This should work, without issues, as long as you have SSH and GUI access (for configuration).
  • There are cloud build services, like Travis CI, that provide support for building Mac apps. While we did not test this ourselves (yet), I don’t see a reason why it could not work. If the user’s home directory is not writable by the build process, then the MOE build setup will need to be customized, so the MOE SDK is downloaded to and unpacked in a writable folder. Other than that, only Gradle is required by default, we download everything else automatically. This option is currently not integrated into the build system, you would need to commit to GitHub (in case of Travis CI), and then when the build is ready, download it from the Travis CI build results. It should be possible to integrate support for this in our build system, but it is not on our immediate roadmap.
  • While we do not endorse or recommend this option, there are people running MacOS on non-Apple HW in VMs (e.g. VMWare) or directly on bare metal. Depending on your country, the Apple EULA may explicitly prohibit this option. You should consult your lawyer before going this route.

Best Regards,
Gergely

1 Like

Well, so you want to build for iOS without a Mac ?
What kind of solution you are looking for ?

Hi Kirill,
I want to develop an iOS app in Java, without using a Mac.

Andrea

@and

I have been looking for the same thing a while ago, since I couldn’t afford a Mac as well. But I can tell you: You will not find a solution that is not building on a Mac system. It is really mandatory for all the Frameworks out there (e.g. Xamarin).

Background Info: I wanted to port an app I created in Android Studio (for Android Devices) to apple. The App is about the school I am attending and shows student relevant information (for example: substitutions).

So I came up with the following: I kindly asked some people of the booster club of our school out about a solution for my problem. Surprisingly, shortly after, they gave me a contact to an IT company that was so kind to borrow me an older MacBook Pro (2013). So thats the one I am using right now and it works just fine!

Conclusion: I recommend you to ask around people you know, If they are willing to borrow / cheaply sell you a device for development. Try to convince them about the good cause they are doing, as in my experience it really works!

I wish you good luck finding a solution for your problem but remember: You will not be able to avoid anything made by Apple!

Thank you for your reply, Mikis.
I know a Mac is mandatory in order to build for iOS. I’m looking for a “lighter” and cheaper solution than buy a Mac or something like this…

Andrea