Re: Windows and DLLs



On Thu, Oct 01, 1998 at 11:05:29AM -0700, David Jeske wrote:
> On Thu, Oct 01, 1998 at 11:10:18AM -0400, Christopher Curtis wrote:
> > THe Windows problem is self inflicted by releasing different versions of
> > the same library without changing the name.  *nix has already circumvented
> > this problem by properly using library naming conventions.  It can
> > basically be represented as:
> > 
> > lib<library>.[a|so].<major>.<minor>.<micro>
> 
> This does not solve the problem. What happens when:
> 
> 1) a user wants to use an app which only works with a newer
> lib. (i.e. he can't install it easily unless he's administrator, or a
> unix wizard)

easy, just put the library where you want it, lets say $HOME/lib/thislib
and do (assuming bash is used)

LD_LIBRARY_PATH=$HOME/lib/thislib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

in your .profile file.

this way your programs will use the libs in $HOME/lib/thislib and if it is not finded there, will go in the usual library path. no root privilege needed here.

> 
> 2) a newer micro version of a lib fixes a bug which caused problems
> with some app, but the fix causes problems with another app.

programs that rely on bugs in buggy version of libraries are buggy themself, just fill a bug report against it, or grab the source and fix the problem. alternatively you can do :

cp thish_program this_program.buggy
vi this_program
|LD_LIBRARY_PATH=/path/of/buggy/librari/libxxx.so.x.y.z; this_program.buggy
:wq
chmod +x this program
and no problem anymore ...

this is just a problem for a buggy OS, like windows.

> 
> > This is a pretty well known system for unices, and has been very
> > successful.  The problems with it now are that some developers are not
> > following these guidelines, or that installations are not properly
> > creating correct links, or that programs are not being compiled with the
> > right 'hints'.  For example, /lib should look like:
> 
> This is only going to get worse as the number of apps and developers
> gets larger. That is my point. In other words:
> 
> The only reason UNIX dosn't currently suffer the same kind of lib hell
> as windows is that there arn't very many apps/libs available. It's not
> because the UNIX system is that much better.

what system are you running under ? have a look at the /usr/lib ofany linux box with some packages installed. btw, debian manages quite well in it, and they have almost 2000 packages, that can in big part all be installed at the same time.
> 
> > One of the problems people have now is with GTK+ and the GIMP.  The
> > problem here is that the GTK people aren't really following the rules. 
> > GTK+ version 1.1 should be backwards compatible with GTK+ 1.0 (same major
> > version number), but have significant performance increases or new
> > widgets.  
> 
> This is exactly why I think the UNIX lib system is just as broken as
> the windows lib system. I think that _what works_ should define
> compatibility, not what is 'supposed to work'. If someone puts out
> GTK-1.1, I don't care what they decided to name the lib, I want
> programs to be bound to that lib which are known to work with that
> lib. If a program is known to have a problem with 1.1, then it should
> keep binding to 1.0. This information should _not_ be hard-coded into
> the install location of the lib and some archaic static system for
> binding together apps and libs.
> 

this is a distrib problem, and not a gnome problem, but if i had a self made linux system to configure, iu would simply use a wrapper around the binaries that use the old libs and change the LD_LIBRARY_PATH to use the correct version of the library.

 you already saying that this is a solution for people with big knowledge in linux (actually i am only setting one variable) but i don't think you will never get a novice to install linux without resorting to some distrib.
compare it to installing a windows system, if i give you all the files in one single flat directo.

Friendly,

Sven LUTHER
> -- 
> David Jeske (N9LCA) + http://www.chat.net/~jeske/ + jeske@chat.net
> 
> 
> -- 
>          To unsubscribe: mail gnome-list-request@gnome.org with 
>                        "unsubscribe" as the Subject.
> 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]