You should already have built and installed omniorb3 as described
in the README .

Now you should test eg2_impl and eg2_clt on the dev machine.  Then
untar the support tarball into the root directory of the target ppc,
and copy over eg2_impl and eg2_clt from the echo-405 dir onto the
ppc and make them executable.  Run eg2_clt on the ppc using the IOR
from an eg2_impl servant instance running on the dev box.  If your
networking is set up properly and you have all necessary shared libs,
this should work.  Otherwise, you may have to twiddle some things
in the omni-support.sh script such as which shared 405 libraries are
copied over and the contents of the /etc files.

Run eg2_impl on the dev machine, and eg2_clt on the ppc.  It works!
But eg2_impl on the ppc fails miserably.

Remember to fix up the #include lines in the source files to use quotes
instead of angle brackets.

Once you compile the echo example, copy the executables and the appropriate
libraries over to the PCPU.
eg2_clt eg2_impl
elibs/libomniORB3.so      elibs/libomnithread.so      elibs/libtcpwrapGK.so
elibs/libomniORB3.so.0    elibs/libomnithread.so.2    elibs/libtcpwrapGK.so.2
elibs/libomniORB3.so.0.4  elibs/libomnithread.so.2.1  elibs/libtcpwrapGK.so.2.0

A few other handy things to copy over might be
/opt/hardhat/devkit/ppc/405/target/lib/libnss_dns.so.2
/opt/hardhat/devkit/ppc/405/target/lib/libnss_dns-2.2.3.so
/opt/hardhat/devkit/ppc/405/target/lib/libnss_files.so.2
/opt/hardhat/devkit/ppc/405/target/lib/libnss_files-2.2.3.so

And
/opt/hardhat/devkit/ppc/405/target/usr/bin/strace

Some of the later opens that occur during the later stages near the failure
point of eg2_impl:

open("/etc/resolv.conf", O_RDONLY)      = 6
open("/etc/nsswitch.conf", O_RDONLY)    = 6
open("/lib/libnss_files.so.2", O_RDONLY) = 6
open("/etc/host.conf", O_RDONLY)        = 6
open("/etc/hosts", O_RDONLY)            = -1 ENOENT (No such file or directory)
open("/lib/libnss_dns.so.2", O_RDONLY)  = 6
open("/lib/libresolv.so.2", O_RDONLY)   = -1 ENOENT (No such file or directory)
open("/usr/lib/libresolv.so.2", O_RDONLY) = -1 ENOENT (No such file or directory

By configuring nsswitch.conf to have no reference to nfs and by adding a
hosts.conf, can we completely eliminate the need for libnss_files, libnss_dns, and libresolv ?

We need the following in /etc:
resolv.conf
nsswitch.conf
host.conf
hosts
