Hello.
Another resend, with minor additions.
I think there are some problems with configuring & building xsane.
I think we need:
- A way of specifing the location of the sane installation to build with.
--with-sane= ??
- A way of specifying static linking for the xsane executable.
This seems like reasonably standard configury stuff. Not that I'm an
expert on autoconf... Geting the right shared libraries / DLLs at
run-time
is maybe a little more tricky.
Building xsane out-of-the-box on a Linux distribution
which includes sane is almost bound to fail: the linked libsane
will be the libsane from /usr/lib, and include files will be taken from
/usr/include
E.g. after configuring xsane-0.55 with --prefix=/home/pkg/test
--disable-shared
I see the following link command for xsane:
gcc -o xsane xsane-back-gtk.o xsane-front-gtk.o xsane-gamma.o
xsane-preview.o xsane-rc-io.o xsane-device-preferences.o
xsane-preferences.o
xsane-setup.o xsane-save.o xsane-scan.o xsane-icons.o xsane.o \
../lib/liblib.a -lgimp -L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk
-rdynamic -lgmodule -lglib -ldl -lXext -lX11 -lm -lpng -lsane -ldl
-ltiff -ljpeg -lz -lm
The "-L/usr/lib -L/usr/X11R6/lib" is also problematic, if the
user/administrator
is in the habit of installing new libraries in anywhere other than
/usr/lib,
e.g. /usr/local/lib. I don't know the answer to this.
I think the recommendation of removing any existing Sane installation
may not be an option for policy reasons or simply because necessary
permissions are unavailable.
My bodge to make xsane link was to configure with:
CC="gcc -L/home/pkg/test/lib -I/home/pkg/test/include"
and ewither run the executable with LD_LIBRARY_PATH=/home/pkg/test/lib
or link a static binary based on the command line above.
Solutions:
- "One-tree-build": move xsane into the sane tree. Does this just work ?
Is there any reason for not doing this ?
- Put -L$(libdir) in the link command, and -I$(includedir) in the compile
commands.
This will work if, as seems reasonably likely, xsane is being installed
to the same place as sane.
Other problems (installation instructions):
The installation instruction to do "make install" as root
is unnecessary, and arguably a bad idea. So long as the install dirs are
writable, there should be no problem.
Similarly, editing /etc/ld.so.conf (or equivalent) is not strictly
necessary. The dynamic library search path can be modified by setting
LD_LIBRARY_PATH e.g. in ~/.profile.
Regards,
John.
-- Source code, list archive, and docs: http://www.mostang.com/sane/ To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com
This archive was generated by hypermail 2b29 : Thu Feb 17 2000 - 00:08:04 PST