Deepak Bhatia wrote:

> #bldenv -d ./opensolaris.sh
> 
> Then I goto particular directory to do dmake all.
> It says sh:/usr/src/cmd/sgs/tools/i386/sgsmsg

It looks like this is the continuation of a previous post where
you're trying to build the runtime linker :-)

As with many subsystems under usr/src, there are dependencies on
other components under the source tree.  If you run nightly, a
full build is carried out in the correct order to make each
component follow the build of any of its dependencies.

If you have a clean workspace, and descend into a subcomponent
area, a "make/dmake" might not find all the dependencies that
are necessary for that subcomponent.

If you do a full nightly first, and then descend into the
subcomponent area, then the "make/dmake" should work fine.


There are even some tricks under the "sgs" area that can help
you build the runtime linker and all its friends.

You'll need a libc_pic.a first - go to usr/src/lib/libc and
build the libc targets (make install).

Under sgs/packages there are some makefiles and tools that
allow the creation of a $MACH/SUNWonld package.  This is not
part of the product, and isn't exercised by a normal nightly
build.  This is a special target that allows us to create a
package of linker related components for testing.  Basically
it is simple mechanism of allowing us to create "sgs"
environments without the need for a full nightly.

Once you've built a SUNWonld package, you can install it with
"pkdadd -d SUNWonld", and remove it with "pkrm SUNWonld".

Take care - it's very easy to turn your system into a brick
with just a few ld.so.1 modifications.  You might try creating
a zone and adding you experimental package to that zone - it's
a little easier to recover :-)

Hope this helps.

Oh, and if you get more linker related issues perhaps you should
move your discussion over to tools-linking at opensolaris.org.

-- 

Rod.

Reply via email to