Commandline Mac and Androindbuild on Windows machine

Hello,
can someone pleas share info about Mac, LinuxUniversal and Android command line building through Unity.exe commandline interface?

Im able to build Win build, but Android cmd build isnt documented at all and Mac and Linux build behavior is annoying. Im able to construct building command, which isnt rejected by interface, build is not created and even didnt get any error message…

Here is official documentation for commandline arguments:

Example of my MacPlayer build command:
%UnityPath%\Unity.exe -batchMode -quit -nographics -projectPath %UnityProjectPath% -buildOSXUniversalPlayer “C:\temp\TargetBuildFolder”

I tried to some %variable% for targetbuildfolder instead hardcoded patch, but there is some bug, which cant parse this path and expecting macOSX like /path/xxx path in variable.

I dont know why, when i using LinuxUniversal, OSXuniversal (32+64bit),OSX64bit, Linux32 a LinuxUniversal(32+64) is failing everytime - without any error message…
SSX32bit works but only for some of valid path) and Linux64bit working by cmd, via GUI working everything.

I getting those strange messages during OSX32bit build:
Aborting batchmode due to failure:
Error building Player: IOException: Failed to Move File / Directory from ‘Temp/S
tagingArea/UnityPlayer.app’ to ‘C:/Temp/!XXXX20141206Mac/XXX.app’.
When i use XXX instead C:/Temp/!XXXX20141206Mac/XXX.app or C:/Temp/!XXXX20141206Mac/XXX its working, so i think that path parser have a bug.

I also wonder that exactly means -buildTarget parameter and how combine this parameter with others to successful build.

Im using unity 4.2, but commandline interface seems to be time same for all versions, at least in documentation isnt info about any differences.

The documentation correctly describes the build platforms that are supported from the command line.

Don’t use variables, hard code the paths.

Can you have exclamation marks in a Windows file name?

It tells Unity that you want to switch to a particular build platform. It is unrelated to making a build.

I managed to Android and iOS builds (on Mac) throught custom *.cs script added to project and executeMethod, but is lots of non necessary work (debugging) and those option would be better as out of box platform parameters.

I still think that universal Mac and Linux options builds are broken on Windows (i debuged it only by switching parameters from - -buildLinux64Player to -buildLinuxUniversalPlayer, so im quite sure that other parameters were ok).

Exclamation marks in Win path are ok, but parsing check is broken, because have to create Mac build directly in Working directory and move it by windows batch command, so i think that some tuning and more documentation would be nice.

  • Even possibility under Unity documentation article would be nice.
  • some info about for which version of Unity is help related would be nice
  • and possibility to use nongraphics parameter on Mac too
  • there also some Mac jenkins plugin unity3D- unity3D related bug, when unity building is stuck (process still running) if jenkins server isnt run under root account
  • funny bug is also on Vista - im able to create mac.app (mac apps should have such structure) directory like folder, im able to copy folder and but im not able delete this folder (by standart explorer operation) - because for that operation dot character in directory name isnt avalaible.

So everything is possible, but this process isnt straightforward and its unnecessary waste of time for developers. Would be nice to distribute some preconfigured Jenkits / Teamcity etc… building server and GUI wizzard directly from Unity team.

Don’t use variables, hard code the paths.

Are you joking? - we need variables, because we need to distribute building scripts to various team-members with different number of partitions, Unity and Unity project paths… and most of all, add for example build date and platform variable to build directory path.
I was able to do that, but i met few parsers errors, which i work arounded . Parser should be polished, because those limitations are described on documentation page - so probably bug happens.

If you were talking about the Unity3d Jenkins plugin, I fixed a bug i v0.7 that seems to be what you just described.