<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div class="gmail-" style="font-family:Helvetica;font-size:12px"><div class="gmail-"><div class="gmail-"><font color="#000000">Thank you Jacob for your answer. It is quite helpful. </font></div><div class="gmail-"><font color="#000000">Sorry for not responding sooner - I wasn't getting messages from llvm-dev for awhile for some reason and had to re-subscribe from a different e-mail address.</font></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><font color="#000000">So I followed the link at the bottom<span class="gmail-Apple-tab-span" style="white-space:pre">      </span>of your response and I am now using the following command to cross-compile for iOS:</font></div><div class="gmail-"><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">cmake -S . -B build_iOS_make -G "Unix Makefiles"  -DCMAKE_SYSTEM_NAME=iOS "-DCMAKE_OSX_ARCHITECTURES=x86_64" -DLLVM_ENABLE_PROJECTS=clang -DCMAKE_INSTALL_PREFIX=`pwd`/_install -DCMAKE_XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH=NO -DCMAKE_IOS_INSTALL_COMBINED=YES -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator13.4.sdk"</font></span></div></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><font color="#000000">And with that I was able to compile some 61% of LLVM. </font></div><div class="gmail-"><font color="#000000">Now I am stuck here:</font></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">[ 61%] Built target yaml-bench</font></span></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">[ 61%] Built target LTO_exports</font></span></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><font color="#000000"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures">[ 61%] </span><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><b class="gmail-">Linking CXX shared library ../../lib/libLTO.dylib</b></span></font></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">ld: unknown option: -z</font></span></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><font color="#000000"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures">clang: </span><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><b class="gmail-">error: </b></span><span class="gmail-" style="font-variant-ligatures:no-common-ligatures">linker command failed with exit code 1 (use -v to see invocation)</span></font></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">make[2]: *** [lib/libLTO.dylib] Error 1</font></span></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">make[1]: *** [tools/lto/CMakeFiles/LTO.dir/all] Error 2</font></span></div><div class="gmail-" style="margin:0px;font-stretch:normal;font-size:14px;line-height:normal;font-family:Menlo"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000">make: *** [all] Error 2</font></span></div></div><div class="gmail-"><span class="gmail-" style="font-variant-ligatures:no-common-ligatures"><font color="#000000"><br class="gmail-"></font></span></div><div class="gmail-"><font color="#000000">I am now going through the CMake scripts trying to figure out where that option is set and how to remove it.</font></div><div class="gmail-"><font color="#000000">Honestly, I am not even sure what that options means. I tried ignoring libLTO target but it had snowballing effect as that target is referenced in a number of other places it seems.</font></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><font color="#000000">As for your remark about not being able to invoke the “fork” system call: my hope was to interpret C++ code on the target platform - the way lli tool does or JIT-compiling it when possible.</font></div><div class="gmail-"><font color="#000000">I am not sure about that, though - so wanted to give that a try to see how that goes.</font></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><font color="#000000">—</font></div><div class="gmail-"><font color="#000000">Best Regards,</font></div><div class="gmail-"><font color="#000000">Igor Gomon</font></div><div class="gmail-"><font color="#000000"><br class="gmail-"></font></div><div class="gmail-"><font color="#000000"><b class="gmail-">Jacob Carlborg via llvm-dev</b><span class="gmail-" style="font-size:medium"> </span><a href="mailto:llvm-dev%40lists.llvm.org?Subject=Re%3A%20%5Bllvm-dev%5D%20Trying%20to%20compile%20LLVM/Clang%20for%20iOS%20iPhoneSimulator%0A%09gives%20errors&In-Reply-To=%3Cr5vbiv%24c7s%241%40ciao.gmane.io%3E" title="[llvm-dev] Trying to compile LLVM/Clang for iOS iPhoneSimulator gives errors" class="gmail-">llvm-dev at lists.llvm.org </a></font></div><font color="#000000"><i class="gmail-">Tue Mar 31 05:03:43 PDT 2020</i><span class="gmail-" style="font-size:medium"></span></font><div class="gmail-"><font color="#000000"><br class="gmail-webkit-block-placeholder"></font></div><ul class="gmail-"><li class="gmail-"><font color="#000000">Previous message: <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/140488.html" class="gmail-">[llvm-dev] Trying to compile LLVM/Clang for iOS iPhoneSimulator gives errors</a></font></li><li class="gmail-"><font color="#000000">Next message: <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/140496.html" class="gmail-">[llvm-dev] llvm-lit and cmake and out-of-tree builds.</a></font></li><li class="gmail-"><font color="#000000"><b class="gmail-">Messages sorted by:</b> <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/date.html#140513" class="gmail-">[ date ]</a> <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/thread.html#140513" class="gmail-">[ thread ]</a> <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/subject.html#140513" class="gmail-">[ subject ]</a> <a href="http://lists.llvm.org/pipermail/llvm-dev/2020-March/author.html#140513" class="gmail-">[ author ]</a></font></li></ul><hr class="gmail-"><pre class="gmail-" style="white-space:pre-wrap"><font color="#000000">On 2020-03-30 23:37, Igor Gomon via llvm-dev wrote:

><i class="gmail-"> I am trying to compile LLVM/Clang(10.0) for iOS Simulator (SDK 13.4)
</i>The way code is compiled for iOS (simulator or native device) is to 
cross-compile it.

As far as I know, it's not possible to run a compiler on the simulator 
or device. You're not allowed to invoke the "fork" system call, that 
means you cannot create a new process. That means, if you do have a 
compiler for iOS, there's no way to run it.

BTW, the proper way to cross-compile for iOS using cmake is to set the 
following cmake variables:

CMAKE_SYSTEM_NAME=iOS
CMAKE_OSX_ARCHITECTURES=arm64 # architecture
CMAKE_OSX_DEPLOYMENT_TARGET=12.0 # minimum deployment target

The above are examples for targeting the native device. Not sure of the 
exact values for the simulator.

For more information, see: 
<a href="https://cmake.org/cmake/help/v3.14/manual/cmake-toolchains.7.html#cross-compiling-for-ios-tvos-or-watchos" class="gmail-">https://cmake.org/cmake/help/v3.14/manual/cmake-toolchains.7.html#cross-compiling-for-ios-tvos-or-watchos</a>

-- 
/Jacob Carlborg</font></pre></div></div></div></div></div></div>