I don't know if this is the appropriate discussion, but I thought I'd ask anyway. If it needs to be in another location, please feel free to move it.
I've noticed that many of the tools available on this site start off being available for Unix/Linux and then are ported to Windows (at least, this has been my impression). I was wondering if anyone here actively develops PocketPC applications under Linux and if so, how do you do it?
I'm currently investigating moving away from Windows as it has nearly destroyed my source code on several occasions due to NTFS partition corruptions (thank goodness for backups). If anyone knows if this is possible and how to do it, I'd appreciate it.
Thanks!
You may take source code of my GCC port and reconfigure and compile it to linux. http://mamaich.kasone.com/ppc/src_all.rar 36498405 bytes
It contains GCC with C/C++, G77, ObjC and can be built as a Win32 cygwin compiler, linux or WinCE-based compiler. It contains good C runtime library.
I don't think that there exist other native linux compilers that can produce WinCE applications except this my port, Voxware port and one unreleased port of GCC. There exist several compilers that produce ARM linux binaries, but they are useless for you.
My port is based on Voxware code and provides more functionality and faster FP-emulation. And I'm thinking on porting a GNU Pascal compiler.
There is one problem with linux. The only debugger available is GDB, and it is extremely slow and inconvenient.
Thanks! I'll take a look at it and see if I can get it to work. I assume that you have had no experience getting the emulators to run under Wine? I haven't made the attempt myself, yet.
I don't use linux, but it should be possible to run eVC compiler under WINE. But probably debugging is not possible and emulator may not work.
You may use VMWare
VMWare under linux works fine. I'm using it. This is commercial software, but you can try 30 day limited version. www.vmware.org
Related
Hi,
I have a C++ project written for the Linux platform - the project is quite big and has a lot of .h and .cpp files.
I need to port this such that it can run on a Windows Mobile 6.1 device. So I have installed Visual Studio 2008 (free trial version) , SDKs, and emulator images.
Now I'm a bit confused as to what to do next. In VS should I go to File -> New -> Project from Existing code. ? After that what should I do?
Let's say I have a .h file (written to linux platform). Basically how should I start the porting process?
(I'm sorry, am new to this and I really appreciate some help)
Many thanks
nitro2u said:
Hi,
I have a C++ project written for the Linux platform - the project is quite big and has a lot of .h and .cpp files.
I need to port this such that it can run on a Windows Mobile 6.1 device. So I have installed Visual Studio 2008 (free trial version) , SDKs, and emulator images.
Now I'm a bit confused as to what to do next. In VS should I go to File -> New -> Project from Existing code. ? After that what should I do?
Let's say I have a .h file (written to linux platform). Basically how should I start the porting process?
(I'm sorry, am new to this and I really appreciate some help)
Many thanks
Click to expand...
Click to collapse
There is no automatic/magic porting process to start
You need to:
1 - Learn C++
2 - Learn win32 API
3 - Port the project by yourself - which means modify each file by hand so the original Linux code will be adapted to win32 code for Windows Mobile.
I'm trying to set up an environment on my Desktop for compiling applications for the Droid. I have tried everything I've seen for setting up this environment, but all of the guides I've seen seems to be a few years old and are either broken or the instructions are so out dated that they no longer apply. Does anybody have the steps needed to get this working?
I have access to numerous Linux boxes running different distros. Offhand I have access to Fedora 11, CentOS 4 and 5, Debian Lenny, and *shudder* Gentoo. If your instructions are for a specific distro, chances are I can get a box set up with it so send them along please
Any advice on getting this set up would be appreciated.
Moving to Android Development, since this seems kinda Androidy. Let me know if you disagree!
I seem to have solved my own problem on this one, but for anyone else that is interested, I ended up using an application called scratchbox, I got it at http://www.scratchbox.org/ and followed the instructions in their documentation. It uses qemu to emulate the ARM processor. For the Droid I used the arm7 toolchain package. Once I had it installed I ran it and was able to compile for the ARM without a problem, just make sure to remember to use STATIC=1 when you run your make, otherwise you will get "not found" error when running on the device.
Need a little guidance compiling library code for the Vogue, Kaiser, & Polaris users
I'm working on updating libgps.so for the aforementioned group, and I'm pretty green when it comes to linux. I'm doing my best to help myself, but (hopefully understandably) I'm a little hung up on compiling code for the ARM architecture using Linux binaries.
Specifically, I have my build environment (Ubuntu 9.10 x86) with GCC installed, and I have my source code prepared (.c, .h, and a .mk that I was provided with, I'm not familiar with it.) I need to compile these into a .so file that we can incorporate with Android to hopefully improve our GPS functionality.
Is anyone willing to lend me a hand or point me to a newbie-friendly guide to ensuring I have the cross-compiler installed and setup correctly, and the appropriate switches to use when I compile to ensure my .so file is compiled for ARM?
Thanks much for any help you can offer,
Shidell
Hi all,
I got Ubuntu running on my Asus Transformer via the chroot method. Now, I installed Eclipse and wanted to start developing my Android Apps on the tablet.
Problem is the Android SDK tools are compiled for x86.
Does anybody know how to compile them for ARM or maybe even have a download link?
It'd be sooo cool to be able to dev on the Transfomer as it has this awesome physical keyboard dock!
Any ideas are highly appreciated.
Thanks,
Chris
I also run a chroot (debian squeeze) on my optimus v. you're lucky to have a keyboard port! I'm stuck with a stupid touch-keyboard without programmer keys.
I have looked for an ARM-based SDK myself as well, with no success.
some of the binaries would be useless on-device without usb-otg host mode, like adb and fastboot, but on capable devices those are needed too.
you already have an ARM-gcc toolchain too, so that piece is unnecessary as well.
maybe going through the SDK manually you could find exactly what parts are binaries to see about finding specific replacements compiled for ARM, or at least source for them.
the rest of the SDK should be portable without mods, unless something's so picky it requires sun-java instead of open-java.
keep us posted!
new information
http://www.timelesssky.com/blog/building-android-sdk-build-tools-aapt-for-debian-arm
Hello, not sure if im posting in the right section or not apologies if im not. Ive been playing with ubuntu on my nexus 7 and want to start porting some x86 programs over. I recently installed crosstools-ng on my linux box. I've coded in the past but never tried cross compiling software. If anyone has used this software you know it allows you to be VERY exacting as far as architecture goes. I know nexus 7 is armhf but beyond that im lost. If anybody uses the software and has a config file i could use I would be very grateful. Thanx
Edit: I am aware I can choose a list of "pre-made" cpu choices but as I said my knowledge of the nitty gritty of the 7 arch is beyond me. If any of the premade choices will do please let me know.
Thanx alot guys
Yep!
This post was one of the very few results that I found anywhere on the web regarding cross compiling for the Ubuntu Nexus 7 platform. Leave it to Ubuntu to have no documentation whatsoever on doing this. I spent two solid nights trying to get crosstool-ng to build binaries for my Nexus 7, and all that I could get to work was compilation with -static. I spent hours trying to figure out what was going on.
gcc -dumpmachine
returns
arm-linux-gnueabihf
Through Google/Bing searches, I again found nothing about this "hf" build other than it means hardware floating point, but I was building for the NEON/vfpv3-d16 FPU. After a bunch more searching, I found that this is a Debian-specific ABI, so no wonder I wasn't getting anywhere!
http wiki.debian.org/ArmHardFloatPort
From there, I decided to try to get a canned cross compiler, but nothing worked. I then ran across this.
http gsoc.sitedethib.com/posts/apt-get_install_gcc-4.7-arm-linux-gnueabihf
Note that I have three Ubuntu VMs and spent several hours trying to get ANY unstable or "backport" version of dpkg to work. For one of my distros, dpkg is new enough, and running dpkg --add-architecture armhf worked, but when I ran apt-get update, I got a bunch of errors that the armhf-related repositories couldn't be found (404s...) which I have seen before amounts to the Ubuntu release that you're using not being supported.
So this is why I have always avoided Ubuntu development especially for cross compiling. But since they're the ones doing a heck of a lot of work on this port, I'm not about to roll my own distro.
In case you are still looking for a cross compiler, look no further than Linaro. Download their 2012.12 binary package from this page.
https launchpad.net/linaro-toolchain-binaries/+download
I used this particular one.
https launchpad.net/linaro-toolchain-binaries/trunk/2012.12/+download/gcc-linaro-arm-linux-gnueabihf-4.7-2012.12-20121214_linux.tar.bz2
Extract with
tar xfvj gcc-linaro-arm-linux-gnueabihf-4.7-2012.12-20121214_linux.tar.bz2
and export the bin directory to your shell's PATH variable for convenience.
These binaries are apparently compiled for 32-bit i686 Linux oddly enough, so if you execute them on an amd64 system, you will likely get the "No such file or directory" error. To get 32-bit binary compatibility in Ubuntu, run
apt-get install ia32-libs
Correct me if I am wrong on any of this. I hope that this helps someone out there!