Dear all, I am a happy user, using scratchbox2 (1.99.0.27) to cross compile applications. My target is an arm platform running Debian squeeze and my host is a amd64 Ubuntu9.04. After some configuration time it works really nicely. But I have a couple of usages questions.
How to get pkgconfig work "automatically"? How to use "make install" or "checkinstall" within the scratchbox2 environment? My directory setup is as follows: 1) /home/myname/arm-2009q3/ 2) /home/myname/armrootfs 3) /home/myname/sourcecode 4) /usr/cross-pkg/xxxxxxx/ (the xxxxxxx is something like "armel-linux-eabi" but I forgot what it exactly is......) The codesoucery toolchain resides in directory (1) I have the root file system of my target in directory (2). I can do this in two ways: I mount with nfs the actually root file system of my target as readonly or I untar under (2) a copy of the root file system in that directory. With nfs I really use the right file system but I cannot write to it. And if I untar the file then is the owner not correct (myname and not root). Both work during the compiling phase, but give a problem when I like to install something. What would be the best/most common approach? In directory (3) I do my development work. I install the needed development libraries with apt-cross in directory (4) which makes them accessible for everybody working on the machine. I used sb2-init inside of my armrootfs(2) directory and I added in the sb2.config file of my target the relevant directories of (4) with means of -L and -I options for the compiler. This works very well; I can compile anything I like within the sb2 shell and it works on the target (when I install the right not-dev libraries as well on the target.) But when the "make" file tries to use pkgconfig is it not working directly. pkgconfig is looking in my target rootfs (2) and not in the additional library directories(4). I have to use "export PKG_CONFIG_PATH=/usr/cross-pkg/xxxxx/usr/lib/pkconfig" and then it is working again. Is it possible to add "TARGET_PKG_CONFIG_PATH" to the sb2.config file in such way that this environment variable is automatically set when I go into the sb2 shell? The next step that is going wrong is when I use "make install" or "checkinstall" within the sb2 shell then the intention is that the relevant files get installed into the armrootfs(2) directory and with the second command I should also get a debian package that I can install on my target. But this is not working: it looks like if "make install" tries to install the files onto the root of my host and not the target. I can solve this of course by using --PREFIX=/home/myname/armroofs during the ./configure phase, but in that case is it not really easily possible to install the debian package on my target. (By the way when I had mounted my real target root filesystem with nfs as read only is this anyhow not working.) How do other users install the just compiled files onto their target? Is there a way to make "make install" or preferably "checkinstall" work? Or is it just a matter of copying the files by hand to the right directories on the target? I hope someone can explain to me what the most common approach is. Many thanks in advance! Kind regards, Han
_______________________________________________ Scratchbox-users mailing list Scratchbox-users@lists.scratchbox.org http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users