I've recently learned some basic Objective-C and have made a really simple "HelloWorld" application for development on iPhones (not through the AppStore, but Jailbreaked iPhones)
I've got my main.m file and Classes in my HelloWorld directory.
I have GNUStep Shell installed on my Windows Machine, the real question is:
How do I compile my HelloWorld Application so I can send it to my iOS device.
I really just want to get the compiled files and SSH it to my /Applications/ Directory to test it.
How can it be done? Thanks.
EDIT:
Alternatively, is there a way I can upload the SDK headers to my iPhone using SSH and compile my program on my iPhone?
Thanks.
Possibly it will be much more comfortable to use virtual machine with mac OS. In this way you will full development toolbox including debugger, leak tester and so on.
Related
I have a PDA device, I’m developing a WinForms application. I’m testing my application on simulator. Once finished my tests, I need to put a release version of the application on the PDA Device. I prefer to avoid the USB connection. Is that possible?
Thankful for your help.
Yes it is possible, as long as the device supports the version of the framework you are working with. You should, be able to drop the applications executable straight into a directory in the PDA, and run the program from there.
I have created a MAC application with libraries 'libmysqlclient.a' and 'libmysqlclient.18.dylib' with Objective-C language in Xcode 6.3.1 in OSX Yosemite 10.10.3. Its working fine when running through Xcode. And I also archived the .app file to install the app in my MAC, its also working fine. But when i tried to install it in another mac, app crashed and shows the message
"dyld: Library not loaded: libmysqlclient.18.dylib Referenced from: /Users/developer/Documents/UntitledFolder/UserName/SampleApp.app/Contents/MacOS/SampleApp Reason: image not found".
From this message i understand that the particular MAC does not have “libmysqlclient.18.dylib”. So, here my question is "Is it mandatory that each MAC should have the library to install and run the application?". Can anyone give me the solution for this with detailed format of creating the .app file and installing it in other MAC systems.
Thanks in Advance.
You have included both a static (.a) and a dynamic (.dylib) library with your app. that do the same thing. A static library compiles into your program, making it larger. A dynamic library ships with your app. or is already install on your target system. If you ship it with your app., it should be in the Frameworks folder of your app. (you create this folder in Build Phases, Copy File). Use install_name_tool -id to set the library install name to #executable_path\..\Frameworks and also in Build Settings, set Runpath Search Paths to the same.
I'm looking to create an application that will be executed on a Mac machine, but I don't have one to develop on. I thought this would be a great opportunity to try and take advantage of the Mono runtime. I'm trying to figure out how to develop on a Windows XP machine and prepare a deployment package for an OSX machine.
I'd like to try and make the application have a UI since my users are not very technical. Is MonoDevelop the right tool to accomplish this? Should I be trying to use Windows Forms or GTK#?
Yep , you should use mono on windows directly with GTK# , but you'll need a few tweaks on mac so you'll need a mac eventualy. Your users will have to install the mono framework on their computer too, mono doesnt produce native Mac applications.
I love mono but if the end users are not very technical I dont think it is the right solution.
Anyway , the only way to develop some real multiplatform apps is Java, since it is pre installed on Macs so users will not have to download a framework to launch your apps.
Why can't Xcode be hacked to be able to run on Windows?
Does Xcode have another programming methods?
Also, I heard that iPhone apps are made with Objective-C, so why is this not available in Windows?
Thanks
Xcode is written in Objective-C and takes advantage of a number of OS X frameworks, so porting it to Windows would require porting all the frameworks on which Xcode relies. Furthermore, Xcode also uses a number of programming tools that would have to be ported to Windows as well (some of them already are, of course).
There are several reasons that Objective-C isn't readily available on Windows:
Most development of Objective-C frameworks takes place on OS X, and a lot of the frameworks aren't open-source and thus can't be ported to Windows (they'd have to be rewritten).
There are some open-source frameworks that could be used on Windows -- for example, OS X's AppKit and Foundation frameworks are (mostly) available as part of the GNUstep project -- but these frameworks aren't widely used or supported on Windows, and sometimes lack capabilities found in their OS X counterparts.
That said, GCC is available on Windows, and since GCC is an Objective-C compiler, you could compile Objective-C code on Windows if you had the right libraries available (or didn't use any third-party libraries). But Objective-C isn't terribly useful without supporting frameworks, and those are rare or nonexistent on Windows.
Same can be said why isn't there Visual Studio 2008 for OSX.
Xcode is a big application written to set of APIs not present on Windows. Porting it would be an enormous job, maintaining it would be a big job, and there are already popular IDEs on the Windows platform.
The same reason you can't install Mac OS X on your PC: Apple chooses to make it available only to people who own their own brand of computers.
I guess that porting XCode would be close to very hard (if not impossible) but even if you were able to have a running XCode version under Windows, I guess that it won’t do what you really want it to do. I assume you want a complete iPhone SDK environment which is reliant on XCode and Interface Builder in a very tight way. That’d require the port of Cocoa Frameworks (among other things) that would be, now for real, impossible to port.
Truth is, as much as you will surely need Windows for Windows Phone development, you need a Macintosh computer for iPhone development.
On the other hand, Xcode as an IDE, is not the best in the world, so even if you managed to get Xcode and make it use, .NET (for example), I’d much rather use visual studio for that.
Actually you can install Mac OS X on any Intel CPU based machine. It is legal as you own the orginal install DVD for the OS X system. After aquiring a copy of Virtualbox or VMWare (either is great, personally I prefer Virtualbox because the display settings are more customizable). Virtualbox allows setup on initial setup while VMWare requires an extra step to ensure compatibility. You can then find the steps online to setup a virtual copy of MacOS X.
After going through the steps to install the OS in the Virtual Machine, you can then go through the process to find XCode in the Apple App Store. From there, have at it. Start programming in XCode and have a good time. Since XCode has its own device emulator you have a built in platform for iOS testing. There may be times where it is a bit buggy but that is to be expected with ANY emulator for ANY system you run.
After you get everything installed and going, sit back and enjoy the programming ride. The only catch is if you want to post anything on the Apple App store and then you will have to deal with getting an Apple Dev License. Objective C can be a bit difficult at times but, at the same time, it can be very satisfying when you solve those programming problems (as with any programming language right ;-) )
Enjoy
PS... this VM install keeps up with all updates from the Apple App Store so keeping the system updated won't be a problem.
PSS... I will not condone anyone for where their source of software is but do keep in mind, setting up a VM with VMWare or Virtualbox and an install DVD is only legal IF you personally OWN the install DVD you created the install image from yourself!
I am currently in a class that is developing applications in Objective-C and Cocoa. I was wondering if there was any way to build and compile Objective-C applications on Windows Vista. During class, we are able to use the Mac machines provided to us, but I was hoping to do some work outside of class, and I only have a Windows Vista machine available to me. I have installed GNUStep. I am looking for a GUI or an IDE that I could use. I have Eclipse, and I tried to install ObjectivEClipse, but that is only for a Mac machine too. Any other suggestions? Thanks.
The compiler is no problem, since gcc includes an Objectve-C frontend. You could simply install Cygwin and use it. the issue is about libraries.
The Cocoa system is very Apple proprietary; but it's a descendant from NeXTStep. For a while (when NeXT was even deeper in debts than Apple) it was named OpenStep, and available as a shell around the NT kernel. Around that time, the GNUStep project was started, and it seems it's still there.
Note, however, that any xxStep libraries gives only a NeXT-like GUI, very different from modern macs. Also, a lot of the newer capabilities are not only new GUI; but new APIs too and these won't be found there.
in short... it's easier to go with a mac.
GNUstep itself offers ProjectCenter, which is a take-off of Project Builder, the NeXTstep IDE that Xcode is derived from. It also maintains the Interface Builder knockoff GORM.
Also, you'll want to bear in mind that GNUstep is a bit limited compared to Cocoa (just because Apple has a whole paid professional development team working on Cocoa full-time and GNUstep does not) and GORM uses a different format from Interface Builder, so if you're taking a class, there may be some Cocoa assignments you won't be able to do with it.
Under the heading of desperation measures:
It's old school but if you have a friend with a mac, you could telnet into the mac and run the dev tools there. You would code in an editor on Vista and then up load to the mac to compile.
That would only let you see the results of command line apps but it would better than nothing.
If the macs in your school lab are accessible you could just screen share from your Vista box. That's another long shot.
Might be easier to beg, borrow or steal a Mac mini.
The Cocoa frameworks are only available on Mac. For anything else, you'll have to use GNUStep.