But on several
PCs I have 5 FreeBSD installtaions running from FreeBSD 5.5RC, 6.0
Release, to 6.1RC in several Patchlevels.
All fairly new versions, except for 6.0. But you probably use -HEAD there for the ports tree? The branch from the ports tree that you use is where the difference is afaik. I'm a bit surprised that 5.5RC goes this way. This breaks compat with earlier 5.x releases afaik.
I also have seen installation that have libgtk-12.so btw. So the problem is even more complicated
Show quoted text 6 lines
All these FreeBSD installations show the same behavior and set the minus
char into the library name. So for me, this seems to be FreeBSD
specific. But I could live with this problem (if documented) when
installing a Lazarus beta version in FreeBSD from source. gmake's
Makefile additionally could test the 3 libs and set (if missing) those
symlinks or can patch the Free Pascal source files if needed.
I don't think this is FPC's task.
First there should have been a longer grace period from the GTK port, but that is beyond our control.
Second, I don't want to hardcode this kind of OS detection into the makefiles, that is waiting for trouble, and we are always reacting in retrospect.
Fixing/keeping this kind of stuff is for the distribution packager, to be done in a way specific for a certain distro (be it a linux distro, FreeBSD or fink)+version. That is in practice how
it works for other packages.
However IMHO what FPC should add is a possibility to switch between both notations without a full recompile or sed like source editing. We can workaround this with a IFDEF, but the next time it is trouble again.
The ports maintainer must then detect what is actually available, and then adjust e.g. fpc.cfg appopriately.
seems for me, that the produced and distributed apps which are linked
against glib, gdk und gtk will have the same problem and may not run if
the wrong filename is used on different FreeBSD target.
There is no help for that.
But on the other hand I am a little bit confused about the answer and
that "pixbuf-devel" had to be installed? There are no *-devel packages
in (Free/Net/Open)-BSD.
I know. I wanted to illustrate that the problem that lib names are hardcoded is not only for FreeBSD. If e.g. some distro renames some lib differently on Linux, you have the same problem.
I use different versions of the FreeBSD ports for the different
installations, mostly actual ones installed via ctm.
What is ctm? Or do you mean cvsup?