[maemo-developers] Survey about Maemo porting problems

From: tz thomas at mich.com
Date: Wed Dec 3 18:32:06 EET 2008
Bug 3909 has been entered.  I found the relevant section in the
scratchbox documentation, but there is a lot of stuff that doesn't
apply (and would probably break) a Nokia install and it is under
maintenance.

It might be possible to use the i386 debs, but when I tried they
complained about the architecture and I really didn't want to
override/force them.

Just unpacking the tarballs (after fixing the kernel command line and
such for 64 bit as is noted clearly) and doing run_me_first.sh works
fine until you reboot.

On Wed, Dec 3, 2008 at 3:24 AM, Eero Tamminen <eero.tamminen at nokia.com> wrote:
> Hi,
>
> ext tz wrote:
>>
>> 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.
>
> Could you file a bug about this to bugs.maemo.org under
> Maemo software -> Development platform -> Documentation?
>
> (e.g. with subject "Issues in 64-bit install documentation")
>
> Thanks!
>
>
>        - Eero
>
>
>> On Mon, Dec 1, 2008 at 4:55 AM, Eero Tamminen <eero.tamminen at nokia.com>
>> wrote:
>>>
>>> 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