Dev on a mac


3jane said:
@trashyMG - It's not about the toolchain, it's about the code actually working on the target platform.n.

So WTF does the OS have to do with setting up a cross-compiling toolchain? You can compile programs for Linux Arm from Windows with a proper cross-compiler setup.. And why would MacOS X be any different.

OK, let's not get into a holy war here. But cross-compiling is one thing (not without it's own difficulties), actual development is completely different. Can you honestly say that it is just as easy to develop software for Linux on Windows as it is to develop for Linux on Linux?


Considering how much effort it takes to install a Linux VM (which is free, btw), only a fool person who is not thinking clearly would even try [cross-development that is].
 
Last edited by a moderator:
Talking about development & developmont environment...


Personally i use QTcreator for all my C++ projects, including SFML, SDL and OpenCV, you do not have to use Qt, even if it is awesome, i found out that lables in qt can play movies.. lol..


QtCreator & Qmake is crossplatform and its a joy to use.


if i feel geeky, i go back to my old Texteditor/OS: EMACS :D


and yes i need tetris and a shrink/psychologist in my texteditor, most epic feature ever.
 
Last edited by a moderator:
OK, let's not get into a holy war here. But cross-compiling is one thing (not without it's own difficulties), actual development is completely different. Can you honestly say that it is just as easy to develop software for Linux on Windows as it is to develop for Linux on Linux?


Considering how much effort it takes to install a Linux VM (which is free, btw), only a fool person who is not thinking clearly would even try [cross-development that is].
you dont need to install a linux VM to cross compile or to develop as I said earlier there are cross platform IDE etc and you can set up anvironments directly on that.


even foxblock compiles his stuff on windows not using a linux VM
 
OK, let's not get into a holy war here. But cross-compiling is one thing (not without it's own difficulties), actual development is completely different. Can you honestly say that it is just as easy to develop software for Linux on Windows as it is to develop for Linux on Linux?


Considering how much effort it takes to install a Linux VM (which is free, btw), only a fool person who is not thinking clearly would even try [cross-development that is].
you dont need to install a linux VM to cross compile or to develop as I said earlier there are cross platform IDE etc and you can set up anvironments directly on that.


even foxblock compiles his stuff on windows not using a linux VM
Good lord. Can you honestly say that it is just as easy to develop software for Linux on Windows as it is to develop for Linux on Linux? If you claim it is so I bow out of the discussion entirely.
 
you dont need to install a linux VM to cross compile or to develop as I said earlier there are cross platform IDE etc and you can set up anvironments directly on that.


even foxblock compiles his stuff on windows not using a linux VM
Good lord. Can you honestly say that it is just as easy to develop software for Linux on Windows as it is to develop for Linux on Linux? If you claim it is so I bow out of the discussion entirely.

Well the beauty of every IDE is that once you got it set-up correctly you can build stuff with the click of a single button and then it is as easy on Windows as it is on Linux.


I can't test my applications for the Pandora on Linux (or Windows) anyway, I need a Pandora for that, so nothing is lost there really.


In reality I code on Windows and mostly compile for the Pandora on Linux (Ubuntu 10.10 in a VBox), because I also have the pnd_make scripts set-up there. Code-wise I just copy the files and change the build target (for which I have a general set-up) in CodeBlocks, it does not take me any extra work and I got 3 build targets done in under 5 minutes (W32, L32, Pandora).


But, I have to agree, setting up the environment on Windows was a lot tougher than for Linux, mostly because very nice SDKs have been made which ease this process as much as possible (I personally use Ivanovic's toolchain in a Linux VM, too, because I found it the easiest to set-up and use).


On Windows you are pretty much on your own and getting all the libraries together (in a pre-SDK era) took the most of the time.


For people using make, cmake or no IDE like CodeBlocks in general Linux obviously is the way to go, it would be a pain to get that working on Windows.
 
Last edited by a moderator:
Is developing for the Pandora currently feasible on a mac, or will I need to use a PC?


I'll be doing low level work but I also understand in this day and age I need to use SDL.


Some opinions would be most welcome as well as software recommendations.


Thanks,


Craig
I know people Partition the hard drive on a MAC to also use Windows.
 
In my experience, a virtual machine ( be it virtual box, or your favourite alternative ) is invaluable when you accidentally extract the contents of a toolchain over your root filesystem.


I'd code anywhere with Netbeans and just push to the Pandora via a mercurial repo for compiling.


If you're savvy enough with shell scripts you can commit your code changes, push them to a remote repo, SSH into your pandora, pull the latest code, compile it and run it all in one script running on your Linux/OSX desktop.
 
Shouldn't information like this be on the main Pandora site? Since one of the main selling points is that it's an open system that anyone can develop for, I would think there should be a whole section on openpandora.org describing how to set up a toolchain in all three major OS's, and links to some SDL tutorials and whatnot.


I'm not a Mac person, but I'm actually a little disappointed that Craig gave up on Mac so quickly and went with Linux... I would think if anything, he should do what he can get to a cross compiler set up and running, and then document what he had to do on his own web site.


--Zero
 
Shouldn't information like this be on the main Pandora site? Since one of the main selling points is that it's an open system that anyone can develop for, I would think there should be a whole section on openpandora.org describing how to set up a toolchain in all three major OS's, and links to some SDL tutorials and whatnot.


I'm not a Mac person, but I'm actually a little disappointed that Craig gave up on Mac so quickly and went with Linux... I would think if anything, he should do what he can get to a cross compiler set up and running, and then document what he had to do on his own web site.


--Zero
Craig is a busy guy, I'm sure he just want to get to coding as quickly and easily as possible. Aren't there any other OS X wielding developers in the community who can do the dirty work of creating a how-to? (I'm not a Mac user, but I see no reason why it would be any more difficult to create a cross-compiler tool chain for OS X than for Linux or Windows. GCC makes it trivial to do.)
 
Craig is a busy guy, I'm sure he just want to get to coding as quickly and easily as possible. Aren't there any other OS X wielding developers in the community who can do the dirty work of creating a how-to? (I'm not a Mac user, but I see no reason why it would be any more difficult to create a cross-compiler tool chain for OS X than for Linux or Windows. GCC makes it trivial to do.)
Yes that trivial I guess. (the author of the thread I linked have actually produced toolchains for windows for other open handheld)
 
Last edited by a moderator:
Craig is a busy guy, I'm sure he just want to get to coding as quickly and easily as possible. Aren't there any other OS X wielding developers in the community who can do the dirty work of creating a how-to? (I'm not a Mac user, but I see no reason why it would be any more difficult to create a cross-compiler tool chain for OS X than for Linux or Windows. GCC makes it trivial to do.)
Yes that trivial I guess. (the author of the thread I linked have actually produced toolchains for windows for other open handheld)
Erm ... 'produced toolhains'? No. Used them to create crap software? Yes. (Okay - gPholdin wasn't so bad :D )


I managed to wrangle the libs & options to create an error free compile which produced a file that has ELF at the beginning. BASH fails to run it. That's the limit of my five year old compiling skills so far.


Next week is half term - I'll have another go if this typical weather holds up :(
 
Last edited by a moderator:
ONCE you get EVERYTHING SET UP, a cross-compiler is wonderful.


But, having everything you need *on* the Pandora, to develop 100% compatible software, is also wonderful. ONCE you GET EVERYTHING set up.


In my opinion, the easiest route is a two-line opkg cmd on a Pandora, a cup of coffee/beer later, and you've got the chance to Just Type 'make'. .
 
ONCE you get EVERYTHING SET UP, a cross-compiler is wonderful.


But, having everything you need *on* the Pandora, to develop 100% compatible software, is also wonderful. ONCE you GET EVERYTHING set up.


In my opinion, the easiest route is a two-line opkg cmd on a Pandora, a cup of coffee/beer later, and you've got the chance to Just Type 'make'. .

It's nifty that you can do development on a pandora. It really shows the flexibility and power of the device as a platform.


But it's more of an interesting technology demonstration then a real solution. I, for one, need dual-head monitors and a keyboard I can fit 10 fingers on. Not to mention compiling on a quad-core is soooo much quicker then on an embedded ARM processor.
 
It's nifty that you can do development on a pandora. It really shows the flexibility and power of the device as a platform.

I have found it extremely time-saving for my ARM projects.

But it's more of an interesting technology demonstration then a real solution. I, for one, need dual-head monitors and a keyboard I can fit 10 fingers on. Not to mention compiling on a quad-core is soooo much quicker then on an embedded ARM processor.

Well, sure, if you have to do it .. a lot .. but who needs to compile things so often that the difference on a file, here and there, really matters?


I have my Pandora mounted on my big fat Linux box, which gives me access to the filesystem, and all my makes run on the Pandora over ssh+screen, so I can sit in cscope+vim on a big fat monitor of my Linux box, yet still type 'make', edit, run, etc. very, very smoothly running the build environment on the Pandora itself .. or move upstairs to a laptop, run the same same on-board Pandora session, and so on ..


And: its really not that slow to compile if you compile often. For porting efforts, where you have code that already works but needs just to be adopted to the Pandora platform, why bother cross-compiling when onboard is so easy?
 
And: its really not that slow to compile if you compile often. For porting efforts, where you have code that already works but needs just to be adopted to the Pandora platform, why bother cross-compiling when onboard is so easy?
It all depends on the size of the stuff you compile. Trust me, you don't want to build Wesnoth on the pandora since it would most likely be using swap during building. It would probably take >1h, while it is done in a matter of minutes on a (multicore) Desktop system.
 
It all depends on the size of the stuff you compile. Trust me, you don't want to build Wesnoth on the pandora since it would most likely be using swap during building. It would probably take >1h, while it is done in a matter of minutes on a (multicore) Desktop system.

A full Wesnoth compilation takes over an hour on my 1.6GHz Atom netbook with 2GB of memory.
 
It all depends on the size of the stuff you compile. Trust me, you don't want to build Wesnoth on the pandora since it would most likely be using swap during building. It would probably take >1h, while it is done in a matter of minutes on a (multicore) Desktop system.
A full Wesnoth compilation takes over an hour on my 1.6GHz Atom netbook with 2GB of memory.
Jepp, atom is already rather slow, but there you at least have enough ram that it should not start swapping as long as you use <=2 threads for building. Now imagine it on the even slower Pandora. Will take *ages*.
 
Not to mention wear and tear. I've actually killed an old (486 old) laptop by trying to compile a kernel on it. Left the thing running overnight and cooked it dead.


ARM has a much better heat profile then x86, to be sure. But my ARM-based phone runs pretty warm with heavy use. I'd be wary of leaving an embedded chip at full tilt for hours at a time.
 
Gunna bump this topic.. Kinda sick of using Virtual Machine and confusing interfaces.


Any luck?


I managed to get GCC / Binutils / newlib compiled.. Just need to test it now :/
 
Last edited by a moderator:
Back
Top