[Uploaded to sunsite.unc.edu:pub/Linux/Incoming, should move to
pub/Linux/X11/devel]
README for iv-3.1l.2-bin.tar.gz
The binary distribution of InterViews with shared libraries must be
extracted in /
cd /
gzip -dc iv-3.1l.2-bin.tar.gz | tar xpf -
Then, either add /usr/local/interviews/lib to /etc/ld.so.conf or make
links for the sharable images
$ ln -s /usr/local/interviews/lib/libIV.so.3.1.2 /lib
$ ln -s /usr/local/interviews/lib/libUnidraw.so.3.1.2 /lib
then run ldconfig
$ ldconfig -v
If you don't make links, be sure that you have ldconfig 1.4.3 or
newer, 1.3 did not work properly when I tried.
=======================================================================
YOU NEED libgr.so.1 TO RUN INTERVIEWS. IF YOU DONT HAVE IT YET, GET IT.
=======================================================================
(See below for instruction to build a library with tiff support included)
___________________________________________________________________________ README for InterViews 3.1 for Linux The file "iv-3.1l.2.diffs" contains patches for the standard 3.1.tar.Z
3) Patches for iv-linux.cf, some Imakefiles, etc. and jump.* files The rules for building shared Linux libraries have been modelled as 4) Patches to improve iv-3.1l and Interviews (see below). Other changes: I have omitted the TIFF objects from libIV.a and added -ltiff to A sharable libtiff.a is available as part of the libgr package on the If, for some reason, you do not want to install libgr.so, you can Interviews fixes Interviews 3.1 has never been officially updated (as far as I know). int iv_3_1l_inofficial_iv_fixes_enabled = 1; if you want the inofficial changes to take effect (this has been done There is no fix for script-building with GCC cpp. I.e., if you use Adresses libIV.so.3.1.1 and libUnidraw.so.3.1.1 occupy the address space
Michael Lipp
Michael Lipp
--------------------------------------------------------------------------- * Support compilation with TIFF. * Library names aren't absolute any more. * iv_3_1l_inofficial_iv_fixes_enabled mechanism (see above). * Default kit restored to SMFKit (default in 3.1 distribution) * A fix for a src/lib/InterViews/tiff.c colormap bug -- --
distribution of InterViews. To apply the patches, cd to the directory
that contains iv/ (NOT into iv/) and execute "patch -p [-s] <
iv-3.1l.2.diffs". The patches combine four groups of patches
These patches introduce "#pragma interface"/"#pragma implementation"
statements for g++ as "space savers". The script for rudimentary
shared library support supplied with these patches has not been used.
for Linux shared library support. jump.* files have been made
as described in "Using DLL Tools With Linux" and should be
"update save" (extra space allocated etc.).
the "builtin" rules for SunOS. Thus, you can say `make World' to get
everything built with shared libraries or `make World.noshared' for
static libraries and executables.
Contributions have been made by
--------------
Ld_libIV (see iv-linux.cf). This allows you to update to new versions
of the TIFF library without having to take care of proper link order
etc.
usual servers. libgr is included in the Slackware distribution (I
didn't check other distributions).
build your own version of libIV that includes tiff support (patches
HasLibTIFF YES" in iv-linux.cf to "NO". The iv-3.1l.2-diffs include
jump files for both versions. Jump files are compatible, i.e., you can
still run the distribution binaries with your libIV+tiff library
(others, however can't run your binaries unless you install libgr
after all and link with "-ltiff -lIV").
----------------
So what to do with inofficial fixes? I can't ignore fixes sent to me,
as this makes the libraries less usable and yet I can't simply include
them as this makes the libraries incompatible. I have chosen to make
all patches depend on a global variable
iv_3_1l_inofficial_iv_fixes_enabled. The library includes a definition
for thaticial_iv_fixes_enabled. The library includes a definition
for that variable (initialized to 0) that you can replace by your own
definition (thanks to dynamic linking). I.e., in your main.c you
include
for all the distributed binaries). Changing the value by replacing the
variable instead of assigning a new value in "main" allows me to make
fixes for global constructors depend on the value. Defining "int
iv_3_1l_inofficial_iv_fixes_enabled = 0;" in the library asures that
the libraries are compatible to InterViews on other systems by
default. I.e., InterViews bugs will appear on your Linux box as on
your Sun, etc. with unpatched IV 3.1 libraries.
the GCC preprocessor as /lib/cpp (as I do), building the scripts in
src/bin/scripts fails and you have to do it by hand.
--------
allocated to them according the document "Using DLL Tools With Linux".
I tried to contact Peter MacDonald who has registered this address
space, but he does not respond to my mails.
earlier, that Peter MacDonald does not intend to release shared InterViews
libraries. So there should be no problem.
Changes in iv-3.1l.2
-----------------,------------------------------,--------------------------
Michael N. Lipp ! Institut fuer Datentechnik !
! Merckstr. 25 ,----------'
! D-6100 Darmstadt ! E-Mail:
-----------------'-------------------'-------------------------------------
Be sure to include Keywords: and a short description of your software.
--
Linux: Generous programmers from around the world all join forces to help
you shoot yourself in the foot for free.