Generic way of running 3rd party library or frameworks on M1 mac - frameworks

I want to know do we have any generic way or setting to run the 3rd party library or frameworks (which are originally not compiled on M1 mac) on mac M1 chip.

Related

Is it possible to target the iPhone with compatible LLVM IR/bitcode from a non-Apple operating system?

OK, putting aside the obvious packaging and signing issues, would it be possible to compile IOS/iPhone compatible executables, by using correctly constructed LLVM bitcode (IR) from a non-Apple operating system, such as Linux or Windows, i.e. by utilising some combination of Open Source compiler infrastructure such as LLVM, Clang or GCC?
Basically, what I'm contemplating is
Compile a pre-existing cross-platform SDK (IOS-compatible) to LLVM Intermediate Representation (IR/bitcode).
Analyse and identify the IOS-specific LLVM (IR) function calls within this layer, using LLVM analysis tools.
After the compilation of the SDK to LLVM IR on the non-Apple system, replace the Apple/IOS-generated-LLVM-bitcode-SDK-representation within the corresponding LLVM IR function calls generated by the non-Mac host.
[possibly] employ the build flags emitted by the Mac's XCode/Clang/LLVM infrastructure, in order to build the IOS-compatible executable on the non-Apple host compilation machine (e.g. Linux or Windows).
If this is at all feasible, I would later investigate the creation of an iPhone/IOS bundle (the construction of IPA is documented, ask Google) and use the open-source Apple code-signing routines, already in use within other cross-platform IOS SDK's
RoboVM doesn't support cross-compiling iOS apps from OSes other than Mac OS yet but we plan on supporting that in the future. Here's an iOS cross-compilation toolchain which runs on Linux that may be of interest to you: https://code.google.com/p/ios-toolchain-based-on-clang-for-linux/.
Looks like Java-to-IOS is being taken care of by the RoboVM project:
Java to Native
The RoboVM compiler translates Java bytecode into native ARM or x86
code. Apps run directly on the CPU. No interpreter or virtual machine
involved.
It makes use of LLVM, as my question suggested.
Also of note is the Avian JVM project. It to can be used to compile to native and IOS binaries (by bundling the JVM), however, I'm uncertain as to the status or completeness of its user interface (UI) layer(s).
Both project appear to be in current and constant development.

Do you need Mac OS X to develop iPhone apps?

I was reading some sort of article stating you need Mac OS X to develop iPhone apps.
Is there really such a restriction?
Can't you just download the SDK (and the iOS developer program) IDE to Windows?
Yes, you do need Mac OS X for that. Xcode (SDK) will only work on Mac OS X.
However, if the legal part for you is not really important you can install Mac OS X on your normal PC. Just google "Hackintosh".
You don't need an actual Mac, just Mac OSX. If you don't feel like buying a mac than you can get a hold of the image of Mac OSX and install it onto your PC using Virtual Machine software. I use VMWare to run MacOSX from my Windows 7 x64 machine. VM's are a great way to go, the driers can take a bit to setup, but once everything is working it's perfect. VM's even support ethernet so from within the VM you can browse the web, download mac apps. Install things like XCode or GameSalad. I suggest researching how to use Virtual Machines.
One near-solution is to run OS X in a Virtual Machine on a Windows platform.
You're then developing on XCode on OS X, in a VM on Windows.
This way, you don't have to buy a Mac, or dedicate the hardware to a "Hackintosh".
Of course, this may not be legal by the license terms; I'm only speaking about the technical possibility.
You absolutely need Intel Macintosh hardware to develop iOS apps. The iOS SDK requires Xcode and Xcode only runs on Macintosh machines. I think that any Intel Mac will work, but with how fast things are changing a newer machine will get you longer time before you are forced to upgrade the machine.
Nope, you need an Intel-based Mac to develop apps for iOS. There is no iOS SDK for Windows.
That being said, there might be a way to use something like PhoneGap to develop your app "elsewhere" and then create a suitable package for iOS as well as other mobile platform. I am not familiar enough with PhoneGap and similar tools to know about this angle with any more certainty though.
You can't, there is no iOS SDK for Windows, it only has a Mac version. However, there are various emulators for Mac out there that you can try to install onto Windows. I've tried this before and it did work, however the performance was really poor. If you really wanted to do iOS development. I would strongly suggest you to actually purchase a Mac.
One year later...
I am not familiar with the prerequisites for developing native iOS apps, but wanted to add the possibility of creating a hybrid mobile application. Usually even then one needs the native tools and SDKs for building the wrapper application. But PhoneGap provide a cloud-based build service, which seems to do the job:
"What about developer accounts and SDKs? Do I need to set those up
before starting with PhoneGap Build?
No! But you might want to install some of the SDK emulators if you
don’t own a particular device that you want to test a build for."
Source: PhoneGap Build service
I have not tested the service myself. Just wanted to give an additional path to consider.
To be clear for iPhone apps development required Mac Computers. Xcode and iOS SDK to lead through the app development.Objective-C is the programming language which is most required for iOS app development to build apps. And to be frank, there is a difference between iOS and OS X. iOS and OS X share more framework. So porting app works from OS X to iOS is possible with a little work. If you are a cocoa developer you would be adapt to these frameworks easier.
Check for more information: developer.apple.com/library/ios/documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/Introduction/Introduction.html#//apple_ref/doc/uid/TP40007898
You can just install MacOS X on windows platform with the help of VMWare which you can use both of operating systems simultaneously side by side.
If you try develop iOS app with cordova like tools, you can simply build with the required SDK and compile it as iOS app then test it on your iPhone or any virtual emulators.
So this is an old question but also the first to appear for me in Google and I finally found a legal way. In 2020 you can go with MacInCloud, costs one dollar an hour for a basic plan. You can code everything elsewhere and then just use the cloud service to deploy the final steps in Xcode. Don't know about installing on your own ipad for testing, haven't gotten there yet.
Yes, you´re gonna need a MacBook or alike to develop for iOS. In my opinion, one of the biggest problems of developing apps for iOS is that you regularly have to buy a new MacBook (or another Mac based technology computer), since over time the most current version available of xCode for your already recently outdated OS X becomes incompatible with the newest iOS.

compiling and signing xcode project on Windows

I am using an application that produce me the xcode project that I have implemented on windows. So in order to test it on iphone i have to use a mac. I am wondering is there any way to compile and sign the xcode project so I can get *.ipa or *.app.
Thanks.
I suggest that you install VirtualBox which enables you to run Mac OS X. Buying a Mac OS X license is rather cheap and VirtualBox is free. If you register at Apple Developer you could download Xcode for free. I have successfully used VirtualBox to setup similar environments, where I used Ubuntu as the host operating system.
The following might be of interest: Develop iPhone applications on Windows (with Virtualbox etc).
No, it is illegal and is only allowed on licensed Mac OS X software.

I Have A project developed using XCode on MAC OS,How Could I build it On Linux?

I Have A project developed using XCode on MAC OS, for some special reason, I want copy entire project to the Linux operating system and go on developing on linux.
How can I develop and build it on Linux?
I am developing an I-Phone project, I using iOS libraries, I (wish to) develop and build on linux, run on iphone
No, it is not currently possible to build Native iOS applications using the native Cocoa Libraries and Objective-C on platforms other than Mac OS X.
You have two issues.
First, are you using OS X only libraries, for example Foundation or AppKit? You could potential develop a Cocoa program on OS X and build it against OpenStep on Linux, but at this point you would need to be very selective in which functionality you use, to the point where it is probably impossible.
Assuming that you have fully cross-platform code, then yes you can build it on Linux, but you will need to move away from the Xcode build system. You can create an Xcode project using an external build system, and then proceed to use something like scons, ccmake, or even make. That way the same build files with work both on OS X and Linux. Or you can continue to use the Xcode build system on OS X and keep a parallel build tool for use on Linux.

iPhone SDK install into Linux

Can I install the iPhone SDK on a Linux platform?
No, it requires a Mac. Specifically, a Mac with an Intel chip, running Mac OS X 10.5 or later.
See iOS SDK.
You can install GNUStep, which provides an SDK similar (though not identical) to Mac OS X. With GNUStep, you should be able to write application using at least the Foundation framework with Objective-C, but UIKit will not be available.
To this end, there is no way to install the iPhone SDK on Linux without installing Mac OS X into a Virtual Machine and then using that -- this, however, violates the terms and conditions you agreed to when creating a developer account with Apple.
To download the 3.2 version of SDK at this point of time , requires Snow Leoperd (10.6.2 or above ).