PDA

View Full Version : Problems with scratchbox


xeos
2006-05-16, 17:29
Hi

I'm having problems with scratchbox, the error appear when i try login to system. The log is:

Welcome to Scratchbox, the cross-compilation toolkit!

Use 'sb-menu' to change your compilation target.
See /scratchbox/doc/ for documentation.

ERROR: Operation not permitted
chroot(/mnt/scratchbox/users/lizard)
ERROR: Operation not permitted
chroot(/mnt/scratchbox/users/lizard)


I think the problem is in chroot-uid...I hope somebody who has had this problem can help me. Thanks you

jussik
2006-05-18, 10:41
Which distro are you installing on?

xeos
2006-05-18, 19:42
Thanks Jussik for your response...

I use debian (testing) ;) I add I can use chroot manually without any problem, but not chroot-uid of scratchbox.

I also forgot say i installed scratchbox in other partition using a symbolic link in /scratchbox.

xeos
2006-05-18, 19:58
Well! it's resolved, thanks jussik, but i remember it's in other partition, I tested installing in root partition and done! :) In the webpage of scratchbox say that it can install in other partition, but i dont know... :S

agile
2006-11-22, 08:14
hi,xeos
How do you resolve this problem,I have the same error,and I have no enough space in /,so I only use the symbal link.

xeos
2006-12-02, 15:48
As i told agile. I resolve this problem mounting partition at begining because linux don't allow make chroot() on other one.

free
2007-11-18, 15:40
One way to do it is to use 'mount bind'. this is transparent for chroot, it's a common way to access something out of the chroot.
With this, you are able to mount one directory outside the chroot on another one, inside the chroot. A link woulnt work.

In my case I had still 500MEGS on / after installing scrathbox. fine
Then i wanted to compile libqt. This needs more than one gig.
so i moved my directory containing my src directory to another disk
then added this to /scratchbox/sbin/sbox_ctl:
sboxrel=`dirname $sbinpath`
SBOX_DIR=`readlink -f $sboxrel`
if ! mount | grep -q "/mnt/hda2/src_sbox" ; then
mount /mnt/hda2/src_sbox/ /scratchbox/users/lke/home/lke/src/ -o bind
fi

for i in register_misc_runner sbox_mount_all sbox_umount_all ; do
if ! [ -x $SBOX_DIR/sbin/$i ]; then
echo "Scratchbox: $SBOX_DIR/sbin/$i is missing!"
exit 1
fi
done

With this, physically my sources are in /mnt/hda2/src_sbox and when i enter in scratchbox , it sees them in ~/src

From what I read things will get even simpler with scratchbox2.

Hope it helps