Programming BREW Phones
jrmbadger writes "I just purchased a BREW enabled phone (a Motorola T720...very cool) from Verizon Wireless. BREW is sort of a competitor to J2ME, but I won't bore you with the details. I was very encouraged that Qualcomm (BREW's developer) has put the SDK on the web for free. However, to compile for the mobile, you need an ARM compiler, which runs $1,500. I think it would be really cool to be able to develop apps for my phone, but I'm not going to spend $1,500 on the compiler alone! Does anyone know how you can create BREW apps on the cheap?"
Doesn't gcc compile for ARM?
The next question is, is the BREW SDK gcc-clean?
You'll need to know the format of the binaries, calling conventions etc. but except from that, I think that you can use gcc.
The guys working with uClinux (the uClinux directory, uCdot and an Arm emulator) has a precompiled toolchain and lots of tips. Imagine glibc + gcc on a cell phone... Now I can play xbill on the train!
I've had the T720 for about 5 days, myself, and have been a bit disappointed with it. BREW is one of the reasons. Apparently, BREW apps can only be loaded through Verizon. And, it seems that Verizon only has apps that make them money in their Get It Now service. It also seems they disabled the ability to get ringtones into the phone through SMS... and instead you must use their Get It Now service and pay to load them (2 bucks each). Also, that handy color screen won't be able to display any of your own pictures... there's currently no way to load your own (Verizon says to use pictavision... but it doesn't support the T720).
In the end, you get this cool phone with a nice color screen, polyphonic ringtones and BREW app support... but no way to put any of your own stuff onto the phone. I checked this out with Verizon and Motorolla today. I'm going to check with Motorolla to see if the firmware is at least upgradeable tomorrow (to fix the bugs like custom rings on numbers locking up the phone). Most likely, this phone will be going back.
Portable versions of Firefox, GIMP, LibreOffice, etc
Visual C++ produces win32/x86 code. But, you don't wannna spend money getting VC++. Not even the educational version that comes pretty cheap. So why can't you use any other compiler that produces win32/x86 code? Such as say, gcc.
There's sample apps that come with the SDK. Why don't you try to compile it with gcc.
At the expense of sounding like a troll. It seems you haven't done your homework. Google is your friend. Usenet is your friend. Such as this thread
I talked to the Qualcomm folks about this at the BREW developers conference in June. They said they have GCC working and would post the details to their developer site. I haven't seen this yet, so I guess they ran into trouble or this is a low priority.
Some folks on the BREW developer discussion board have tried to figure out for themselves how to get GCC to work. According to them, GCC will not work because it does not compile position independent code that uses the ARM procedure call standard (ie: it doesn't implement the -mapcs-reentrant command line option).
Harvey Mudd College had a student project last year to get GCC working for BREW. Unfortunately they never posted their results to the web.
I really like BREW, it's a fun platform to develop for.
Unfortunately, I think its current karma excludes hobbyist developers. The C++/C/Assembly vibe is wonderful and efficient, but it also gives you too much control over the phone for us to reasonably expect the device manufacturers and the carriers to open this up completely. This isn't J2ME where a JVM sticks your code in a sandbox and isolates it from the rest of the phone. You can screw the phone up, maybe even do bad things.
So there are few hoops to jump through if you want to see your application running in your hand. You need a business. That business needs a $400 Verisign certificate (to sign your applications with). You have to register with Qualcomm. You have to mail your phone to them to get reflashed. You need a $1500 compiler.
This is very reasonable process for a business that plans to write software for phones. But not hobbyists. Maybe it's better to think of BREW as a very open and relatively cheap game console platform, rather than a completely free and uncontrolled platform like PalmOS.