On Mon, 2006-07-17 at 10:58 -0700, K. Richard Pixley wrote:

> Well, ok.  The first thing I tried to do in scratchbox didn't work, 
> namely, building a "native" emacs using the HOST compiler so that I have 
> a reasonable IDE available.

You can run Emacs on your host system (= outside of Scratchbox) and edit
files there.  You can create a symlink to your Scratchbox home directory
(/scratchbox/users/$USER/home/$USER) to make things easier.

If you want to open files for editing from within Scratchbox, you can
use emacsclient (do "M-x server-start" in your Emacs before using it).

> So far I don't even understand what a "devkit" is.  I get the idea that 
> there are different toolchains, one selects a toolchain and builds a 
> "target" out of it.  And that any particular instance of scratchbox has 
> one "target", (very poor choice of names, btw), active at any one time.  

If you don't understand what a target is, how can you judge that it's
badly named? :)

By default Scratchbox comes with general-purpose (build) tools (such as
make).  A devkit provides special-purpose (build) tools (such as dpkg,
or RPM build tools).  They are not (usually) related to cross-compilers.

> But I really have no idea what's involved in a "target" aside from the 
> illusion of a cross compiler.

Target is:
 1) an empty filesystem for building your system into
 2) a configuration file for Scratchbox to know what to use for it

The target configuration defines three (or four) important things:
 1a) which compiler to use
 1b) what is the target CPU architecture (defined by the compiler)
 2) which devkits' tools do we need for the development of our system
 3) how are the binaries built for the target architecture executed

> I don't see where the real compiler is located, I only see the
> wrappers.

The cross-compilers are located in the subdirectories
of /scratchbox/compilers.  The wrapper executes the correct one based on
the target configuration.

> I also don't see where the headers or libraries are intended to be 
> located, either when a "target" is active or not.

GCC-based cross-toolchains include kernel and C-library header files so
you don't really have to care about them.  If you want to install
additional header files (along with a library you're using), just
install them normally to /usr/include.

timo


_______________________________________________
Scratchbox-users mailing list
Scratchbox-users@lists.scratchbox.org
http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users

Reply via email to