[maemo-developers] Survey about Maemo porting problems

From: tz thomas at mich.com
Date: Tue Dec 2 17:42:39 EET 2008
I was doing only sbox_mount_all, not "(path)/scratchbox/sbin/sbox_ctl
start".  This actually does the binfmt_misc to qemu-arm binding as
part of its function.

Note that running this is NOT mentioned anywhere in the INSTALL.txt
files, nor any of the amd64 howtos (and it is required to be installed
manually on 64 bit linux).

It is buried in some scratchbox information marked for system
administration.  It might also be automatically started under other
circumstances.

On Mon, Dec 1, 2008 at 4:55 AM, Eero Tamminen <eero.tamminen at nokia.com> wrote:
> Hi,
>
> ext tz wrote:
>>>
>>> Please check that you've setup your Scratchbox target properly.
>>> It seems that there's some problem with your CPU transparency setup.
>>
>> I don't have NFS exported from my tablet or anything else AFAIK, and I
>> don't remember it being part of the install manual or script stuff
>>
>>
>> http://www.scratchbox.org/documentation/user/scratchbox-0.9.7/usage/transparency.html
>
> NFS is needed only for the sbrsh "CPU transparency" method, for
> exporting the SB chroot environment to the target running the
> sbrshd daemon (see sbrsh documentation at scratchbox.org).
>
> User-space qemu doesn't need NFS as it's local.  As user-space qemu is
> much easier to install and good enough "CPU transparency" method for
> almost everything (except threading), that's the default.
>
>
>> There is qemu, and that is there, but I can't find anything to tell me
>> how that is supposed to work.  Since I'm using arm64 linux, I had to
>> install manually, but there may be an extra step to get qemu linked as
>> the emulation method.
>>
>> I can't find any explanation of exactly how it works (I can infer much
>> from requiring binfmt_misc, and qemu,
>
> SB init script sets the chosen "CPU transparency" method binary
> as the binfmt_misc interpreter for ARM ELF binaries.  I.e. ARM
> binaries just are automatically run through ARM qemu.
>
>
>> but if even one thing is wrong
>> it won't work and I have no easy means of finding what the cause is).
>> Is there any way of testing the setup?  Any specific conf file to
>> check?
>
> Just build any ARM binary (in SB ARM target "gcc" is arm cros-compiler).
> Then try to run it.  If it  doesn't run, then some additional things
> need to be tested:
> - Is it really an ARM binary?
>        file <binary>
> - Do you have qemu configured?
>        grep qemu /targets/links/scratchbox.config
> - Does the qemu work?
>        emu=$(grep qemu /targets/links/scratchbox.config|cut '-d=' -f2)
>        $emu --help
> - Can the binary be run with qemu?
>        $emu <binary>
> - Are all required libraries present?
>        /lib/ld-2.5.so --list <binary>
>
>
>        - Eero
>

More information about the maemo-developers mailing list