On Fri, Nov 21, 2008 at 2:19 AM, Neil Williams <email@example.com>
On Thu, 20 Nov 2008 10:10:16 +0530
> after running emsetup successfully, it finishes like saying "SetupUse --verbose and/or --report to see the packages. The toolchain has
> appears OK for Emdebian. Nothing to do". But i dont know where the
> toolchain have been installed and how i will make use of it to build
> our own filesystem.
been installed in the normal packaging places, as normal Debian
packages. Use dpkg -l 'gcc*'
yes, i got the toolchain installed in our machine, but when i gave 'dpkg -l gcc' its showing many gcc packages, i dont know which toolchain for armel.Anyway i got arm-linux-gnu-* binaries.
You can use the cross-compiler using emdedian-tools (emsource and
Can you tell me which are basic packages to cross compile for create a minimal root filesystem for our armel platform.Anyway i started with busybox from emsource ,but when i try to run #emdebuild --build-dep its giving me a error
Checking for debian/control
Checking for buildtime cross dependencies in 'debian/xcontrol'.
No xcontrol file. Nothing to do.
How can i get this xcontrol file inside the debian.
You can also use it in any package build using:
$ dpkg-buildpackage -aarm
which in turn calls
$ ./configure --host=arm-linux-gnu --build=
(where build is either the full i386 or full amd64 triplet)
I have to try this one after emdebuild work.
Well, the reason comes directly from your original email:
> > What error? Be precise.
> > Why are you trying to run emsandbox from a local directory?
> > Ensure that the emdebian-rootfs package is installed inside the
> > Debian chroot and run emsandbox from there.
> > emsandbox does not run ./emsecondstage itself, it prepares the root
> > filesystem tarball and copies emsecondstage into it. You are using a
> > chroot inside a chroot to create a chroot inside a different
> > chroot. ;-) (It's probably easier to have a box that runs Debian
> > natively - Ubuntu complicates things unnecessarily, which is why I
> > asked for emdebian-tools to be removed from Ubuntu.)
> > The Debian chroot runs emsandbox to create the root filesystem. You
> > copy that root filesystem out of the Debian chroot and onto the
> > storage of the target board. Then you run ./emsecondstage to
> > configure the installed root filesystem.
> you totally misunderstood here, we have created that root
> filesystem (emdebian.tar.gz) in our chroot debian and then while we
> ran it in our arm target only we getting that error
"But when i try to run the ./emsanboxemsandbox does not run in the target.
in target its giving me some error"
sorry i ran emsecondstage only not emsandbox.
emsandbox runs in the Debian chroot to create the root filesystem which
is then decompressed to the target device.
Disagreement between the root filesystem and the system / kernel
> 1# ./emsecondstage
> ./emsecondstage: line 97: 1676 Illegal instruction chroot
architecture. Sounds like you are using an armel system to execute ARM
binaries - whatever system you booted in order to run ./emsecondstage
was an armel system and the binaries being executed by emsecondstage
yes, mine is armel sytem.so i trying to cross compile armel root filesystem.
Yes, it is possible to build armel packages.
> We are trying to install armel toolchain to build our own
> packages.Anyway after long struggle we forced to try the emsandbox
> rootfilessytem for our customized debian base file system. is this
> possible in emsandbox?
If emsetup says everything is OK, it has found the toolchain.
> As i seen so far we didnt face any issue in chroot debian in
> ubuntu, only the emchain has given me the error of missing armel deb
> packages.But as you said emsetup only update the source.list and i
> dont know how to install the armel toolchain with emsetup.Can you
> show some light in this ?
emdebian-rootfs is a package - sorry, didn't mean to confuse.
> > 3. run the emdebian-rootfs scripts directly, not using some local
> > directory - emsandbox not ./emsandbox
emsandbox is a script in the emdebian-rootfs package.
> > 4. run emsandbox to create an ARM root filesystem tarball:
> > # emsandbox -a arm create
> > 5. Back outside the Debian chroot, from Ubuntu, copy the root
> > filesystem tarball onto the target board storage.
> I cant find anything like emdebian-rootfs executable in the machine
> after installing emsandbox.
You have to connect a keyboard and monitor somehow, generally that is
> > 6. From ubuntu, boot the board and connect.
> how we will boot the board from ubuntu...we already running a
> minimal kernel and rootfilesystem which has been given by the board
> vendor.so, we are booting with their image and then trying the
> emdebian stuffs in that.
via a serial connection to the bootloader and the Ubuntu system then
connects to the serial port and provides the interface, the connection.
I use screen, others would use minicom.
yes, we are also using minicom.
> Do you have any documentation showing how to build our own filesystem
> using emdebian armel toolchain or to cross compile a package .that
> will be helpful to proceed my work hopefully.
Cache files for armel are the same as for ARM and dpkg-cross already
provides the required values.
Another problem with your Ubuntu setup is how to manage clean chroot
builds - using a disposable chroot inside a static chroot can require
some fiddling, equally using a static chroot for all builds is going to
cause problems with dependencies and cross-dependencies being left
To use a disposable chroot inside your Debian chroot, use empdebuild to
create it, update it and build packages inside it.
Once you've built a few packages using emsource, emdebuild and
empdebuild, you can look at the autobuilder, em_autobuild.
You'll need to create a local repository using reprepro to contain the
packages and make that available to the machine running emsandbox.
Use the machine:variant support to set the mirror in