[OS X TeX] iInstaller and manually installed components

Enrico Franconi franconi at inf.unibz.it
Tue Nov 30 06:32:06 EST 2004


On 30 Nov 2004, at 00:59, Martin Costabel wrote:
> But here is a warning in the opposite direction: If you want to 
> compile your own Unix software, whether with Fink or darwinports or 
> "by hand", then do *not* install i-installer packages like libjpeg, 
> libpng, libwmf, imagemagick and so on. The reason is that these 
> packages install headers into /usr/local/include, libraries into 
> /usr/local/lib, and some config scripts into /usr/local/bin. Every 
> configure script and every preprocessor, compiler and linker will pick 
> these up, if you want it or not, because these directories are in 
> their standard search paths.
> Some compilations will already break early on because of this, others 
> will compile successfully, but the executables will be linked to these 
> libraries, and when you later on update or remove the i-packages in 
> question, your executables will crash. You also cannot run your 
> executables on another machine, unless it has exactly the same 
> collection of i-packages with the same versions installed.

I believe that people did not understand the importance of the argument 
of Martin. The point is about *management* of libraries, i.e., update 
or removal, for which the i-installer philosophy is completely 
inadequate; of course, the i-installer works quite well as far as just 
installation is concerned. The handling of dependencies in the 
i-installer, from what I understand, is very poor. I may update/remove 
a library which is essential for some executable without being warned. 
I can imagine two scenarios in which this may happen: you have already 
some version of the library, you have some executable which depends on 
it, you update the library with the i-installer (overwriting the 
previous version), the executable is incompatible with the new version 
of the library; you install the library, you compile an executable that 
depends on it (system-wide), you update/remove the library with the 
i-installer and the executable crashes.
Fink was created exactly to handle complex dependency situations like 
the above. Personally, whenever I have to install a unix package, if it 
does not exist as a fink package, I create myself a fink package for 
it.

cheers
--e.

--------------------- Info ---------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
           & FAQ: http://latex.yauh.de/faq/
TeX FAQ: http://www.tex.ac.uk/faq
List Post: <mailto:MacOSX-TeX at email.esm.psu.edu>





More information about the MacOSX-TeX mailing list