On Fri, Apr 20, 2001 at 02:09:24PM -1100, Melanie Gault wrote:
> hello
>
> I try to install dia 0.86 on a solaris system.
> after installing all libs needed (glib gtk gdk-pixbuf and libxml)
where'd you put evetything? the really bad /usr/local?
> I compile and install dia. All works without a problem...
>
> but when I try to launch it... I got :
> Couldn't find objectswhen looking for > object-libs, exiting.
>
ugh. sounds like it cant find your libs. can you run:
$ dia
and send all the output?
> I try to do as the FAQ says... : ldconfig, but it does not exists on my
> system.
ldconfig doenst exist in solaris, mainly because ldconfig is a hack. properally
compiled/built apps dont even need it.
> I read archives, and find some people with the same problem as mine, but
> not the solution...
> I try to set an env. variable LD_LIBRAIRY_PATH but it does'nt work much
> better...
technically, if built right you wont need ldconfig (mostly a linux thing) or
LD_LIBRARY_PATH.
add -R to the variable LDFLAGS in the Makefile. well, all
makefiles.
if the configure script is written correctly, you should be able to pass both the
environment variables CFLAGS and LDFLAGS to specify where the comipler and linker
should look for things:
something like this (just what i had in this particular window)
CFLAGS=-xCC -xO5 -xtarget=ultra2 -xbuiltin=%all -xdepend -xvector -xarch=v9a
(for sun's compiler, not gcc.)
LDFLAGS=-L/opt/gnome/lib -R/opt/gnome/lib
note that ldflags is only used when linking object files whereas cflags is used for
compilation. sometimes (like when compiling sparcv9 binaries) you have to tell ld
we're using -xarch=v9, so it will link okay. but you shouldn't run in to that. (and
i wouldn't recommend building 64 bit stuff until youve done a fair amount of work with
solaris and getting configure/makefile stuff to work, because sometimes you have to do
some funky stuff *to* get it to work.)
the key here is what is called a link time library path and a run time library path.
link time is something like:
-L/usr/local/lib
run time is:
-R/usr/local/lib
(linux uses something like -rpath /usr/local/lib)
this compiles in to the executable (done at link time) the path to search for
libraries. so when a binary runs it will then search the /usr/lib
(though it might be the revers, cant remember).
this prevents something like what is done in ld.so.conf (the configuration file used
by ldconfig in linxu) which will go out and stat all the dirs in your ld.so.conf file
when the binary runs. the runtime path will only stat what you tell it to stat.
its really cool when trying out new versions of your libraries, especially if you put
your devel libs somewhere other than your production libs, because your production
apps wont get touched by the new apps (the whole seperate directoy thing)
anyways, give me some more stuff on exactly what comes out of running dia, and ill try
and help.
>
> I'm a newbie in solaris and unix world, so I don't know what I can do to
> make dia work...
>
> please help...
>
> thx
>
> Melanie
>
>
>
--
thanks
adam