-
programing problems
hey i have recently managed to build a toolchain and i have been trying to compile and run a "hello world" program from it.
the compiling seems to work just fine, thease are the cammands that i use:
1. i type in "make" which inturn compiles the two m files in this particular program from the makefile and turns them into o files.
2. i run "arm-apple-darwin-gcc -lobjc filename.h -o filename.h" which compiles the header file.
3. then again i run the cammand "make" which gives me the actual program that i need.
the actual compiling procces seems to work because i have compared my binary to the binary from the website for particular program.
i ssh into my phone and install the program and the plist from the dev page that i got all the source code from and whatnot. i then went into the m68ap.plist file and typed the "net.fiveforty.iphone.hello-uikit" identifier in so the thing will show up and run. i restart it and it doesnt show up and then i try to launch it from the finder app or that app with the star at the bottom and it always crashes and wont even run.
anyways could some one tell me what im doing wrong please because there isnt that much info out there on the actuall compiling process and i cant find anything that helps my problem.
i was wondering since identifiers have the com. or net. are you supposed to host a website that gives the phone or touch permission to run the program?
i have tryed other code for simple programs and they all seem to do the same thing. installing apps still work from the installer. by the way im runing 1.1.2 on my phone.
-
No, the reason the identifiers look like websites is because it is a reasonable mechanism for ensuring that no two identifiers are the same. If people only chose identifiers for which they were registered with some authority for, then two people wouldn't accidentally create programs with the same ID. Other than that, the identifiers have nothing to do with the internet, and you could set it to xyzscoobydoo and it would have the same effect...
Try running the program from MobileTerminal. Simply copy the executable into a directory that stuff can be executed in. (If you haven't changed the fstab file, then you probably can't execute stuff in the private/var directory or subdirectories...(which includes private/var/root/Media...etc.) So copy it somewhere else. Next, run the MobileTerminal program and use "cd" to change to the directory you put it in. To run it, type "./" followed by the filename. So if you copied a file called "helloworld" to the "/etc" directory, you would type:
$ cd /etc
$ ./helloworld
If you want to execute it as an icon on Springboard, then create a folder called "HelloWorld.app" and add the following to it:
1. the executable
2. an icon called "icon.png"
3. a splash screen called "Default.png" (optional)
4. "PkgInfo" (get this from another app...leave it unchanged)
5. "Info.plist"...get this from another app and use a non-microsoft text editor (e.g. jEdit) to edit that file. Under "CFBundleExecutable", replace it with the name of your executable file. Under CFBundleIdentifier, replace it with whatever you want. Under CFBundleVersion, replace it with whatever you want. Don't touch the CFBundleInfoDictionaryVersion.
When you are done doing this, copy HelloWorld.app into the /Applications directory and restart springboard. (I believe the program SysInfo has a Respring button that's useful...) It should now appear.
JLA