BiPOM Forum
General => GadgetPC => Topic started by: ehagerup1 on January 14, 2010, 04:41:23 pm
-
In case this helps anyone else here are the steps I took to allow me to compile drivers and modules on the GadgetPC as well as C and C++ programs. I by no means am a linux expert and if anyone notices any ways I could have improved the process let me know. I\'m always looking to learn new things to learn:
update-initramfs -c -k 2.6.30.4\\
plug in usb drive to ubuntu virtual
copy full source directory of ~/linux/2.6.30.4 to /media/EXT3/usr/src/
ie: cp -r ~/linux/2.6.30.4 /media/EXT3/usr/src/
ln -s /usr/src/2.6.30.4/ /lib/modules/2.6.30.4/build
execute "apt-get install make gcc"
or if you don\'t have internet yet on it you can download the .deb files for the debian repositories and execut:
"dpkg -i filename"
Be prepaired to deal with a long chain of dependencies. Also make sure to download the armel packagess
You should now be able to execute the make command.
You may encounter issues with running out of RAM when compiling some things. To fix do the following:
Back on the virtual execute the . ~/linux30.sh script again.
When you get to the configuration find the option to enable swap. Can\'t remember where it is, but it is in there somewhere.
save config
Execute "make"
when complete copy the uImage over the old uImage in the FAT partition.
Next, find another usb drive, or if you still have room on your original one you can use that.
plug it into the ubuntu virtual
execute "sudo fdisk /dev/sdc" or whichever letter was assigned to the drive.
execute "n"
execute "p"
execute partition number "1" or other if that is already used
specify the blocks you want it on.
execute "t"
select the partition number
execute "82"
execute "w"
you can now remove the flash drive
boot the gadget pc and insert the second flash drive.
-
ran out of chars:
boot the gadget pc and insert the second flash drive.
Make a swap drive by execuring "mkswap /dev/sdb1" or appropriate drive name assigned by OS.
execute "swapon /dev/sdb1" or appropriate drive name assigned by OS.
You will now have as much memory as you need (up to ~4 gb as addressible by 32bit CPU". Verify by executing "top"
Also, I was messing around with c# on it (mono) and was quite impressed with its performance. Was able to run my Kalman filter program which contains *A LOT* of math including pricey power and sqrt functions at over 400 hertz.
Also, to the GadgetPC developers, can you outline your driver compilation process for the ARM 9?
-
Also, to the GadgetPC developers, can you outline your driver compilation process for the ARM 9?
Usually, we compile driver sources on a PC wmware ubuntu platform using a cross-compiler
-
I think he is requesting more information than that. I am also wondering, I am considering to develope a lot for the gadgetpc.
-
For example, to compile a driver for Sierra USB modem
the following screenshot shows a typical scenario
http://www.bipom.com/support/gadgetpc/sierra.png
(http://www.bipom.com/support/gadgetpc/sierra.png)
-
Great post ... thanks.
I am curious about getting mono installed on the GadgetPC. How easy was it to cross compile the binaries? I am finding the process somewhat challenging. I have some avionics telemetry code in C# that I would really like to port over, so any tips on getting mono running would be great.
Thanks
Steve
-
I am curious about getting mono installed on the GadgetPC. How easy was it to cross compile the binaries?
Note, GadgetPC can run Debian installation.
I guess the fastest way is to try to install \'mono\' under Debian using standard methods
apt-get install monodevelop nunit mono-devel
apt-get install monodoc
Also, no needs to cross compile. It is possible to compile
on GadgetPC using a native gcc compiler.
I don\'t know if GPC resources will be enough to run \'mono\' virtual machine. It is only 32 MB system.
-
Hi!
I\'m confused about how to obtain a working compiler for Debian:
1) When using the "advanced" method of installing Debian, not using Virtual Machines but instead downloading the following files from the ftp:
Linux kernel: linux2.6.30.4_18May2010.tar.bz2
RootFS (Debian Lenny): debian_rootfs_22Feb2010.tar.bz2
then, when i try "apt-get install gcc" some packages get downloaded and then i get a "file not found" from apt-get, because the files it tries to fetch aren\'t in the repository, and i\'m not sure what to do next.
Should i try an older kernel/rootFS combination?
If so, which one is known to be "problem free" when installing gcc natively on the GadgetPC?
and
2) I\'m not clear whether the Ubuntu Virtual Machine that can be downloaded from the ftp (i downloaded UbuntuARM_Rev102_28Oct2009) already has the cross-compiler installed or is separate installation required? The "gcc" in that VM generates regular intel binaries according to the "file" command, and i don\'t know if there\'s a cross-compiler somewhere around already that i\'m missing
Thanks!
-
then, when i try "apt-get install gcc" some packages get downloaded and then i get a "file not found" from apt-get, because the files it tries to fetch aren\'t in the repository, and i\'m not sure what to do next.
Try
chmod -R a+w /var/cache/man
mkdir -p /var/log/apt/
apt-get update
apt-get install build-essential
2) I\'m not clear whether the Ubuntu Virtual Machine that can be downloaded from the ftp (i downloaded UbuntuARM_Rev102_28Oct2009) already has the cross-compiler installed or is separate installation required? The "gcc" in that VM generates regular intel binaries according to the "file" command, and i don\'t know if there\'s a cross-compiler somewhere around already that i\'m missing
A cross-compiler is pre-installed
Of course, if you run gcc it will run a native x86 compiler
To complie for Gadget PC you need to run a cross-compiler for ARM.
Please look at /home/mini/app/hello . This is a test example with a correct make file.
To compile you need to execute the following commands
cd /home/mini/app/hello
make clean
make
Note, you can compile Linux executables for GadgetPC under Windows
using ARM development system from BiPOM. It\'s FREE
-
Vitaliy,
Thanks for the suggestions on apt-getting the mono package onto a Debian-Gadget. That certainly seems much easier than building the runtime per the mono site suggestions. I have quite an investment in C# utilities that I would like to port if possible, so it is worth the experimentation to to me to try and get a CLI runtime.
Thanks
Steve
-
Thanks for all your help Mr Vitaliy, I was able to install the build-essential package (along with gcc,g++,make and all the other good stuff in it) without problems with your help.