[maemo-developers] Survey about Maemo porting problems

From: Eero Tamminen eero.tamminen at nokia.com
Date: Mon Dec 1 12:55:10 EET 2008
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