F.A.Q. - 7. Compile Problems - Specific Packages
Q7.1: A package fails to build with errors involving
sed.
A: This can happen if your login script (e.g. ~/.cshrc)
does something that writes to the terminal, e.g "echo
Hello" or xttitle. To get rid of the problem, the
easy solution is to comment out the offending lines.
If you want to keep the echo, then you can do something like the following:
if ( $?prompt) then echo Hello endif
Q7.2: I want to switch to Fink's XFree86 packages, but I can't install
xfree86-base | xfree86, because it conflicts
with system-xfree86.
A: All flavors of X11, unfortunately, really needs to be installed in
/usr/X11R6. Because of this the Fink xfree86-base and
xfree86-rootless packages install there, too. However,
since Fink won't remove any files that aren't in its database, it
won't automatically replace a non-Fink installation of X11.
Here's how to proceed:
Note: 10.2.x users with up-to-date versions of Fink (>= 0.16.2) and 10.3.x users should skip step 1 below (it won't work anyway).
1. Remove system-xfree86. If you don't have any
packages that depend on X11, this is straightforward. Frequently,
however, many packages that depend on X11 are installed. Rather than
uninstalling all of them, you can use
sudo dpkg --remove --force-depends system-xfree86
to remove it, leaving everything in place. If you don't have
system-xfree86 installed then proceed to step 3.
2. Manually remove all of XFree86. This can be done with
sudo rm -rf /Applications/XDarwin.app /usr/X11R6 /etc/X11
If you are switching from Apple X11, remove the X11 application, too.
3. To get XFree86-4.2.1, Install Fink's xfree86-base
and xfree86-rootless packages by the usual means:
"fink install" for source users, "apt-get
install" or dselect for binaries.
-or-
3a. To get XFree86-4.3.x and above, install Fink's xfree86 package, with "fink install xfree86"--the latest version (XFree86-4.4.x as of May 25th, 2004) isn't in the binary distro yet, and is currently only in the unstable tree [see how to install unstable packages].
Q7.3: How do I change from the non-threaded version of Fink's XFree86 packages to the threaded version (or vice-versa)?
A: If you are running the Fink version of XFree86 and you want to switch between the threaded and non-threaded versions of Fink, you need to manually remove the old version. This is done at the command-line with the commands:
sudo dpkg -r --force-depends xfree86-base sudo dpkg -r --force-depends xfree86-shlibs sudo dpkg -r --force-depends xfree86-rootless sudo dpkg -r --force-depends xfree86-rootless-shlibs
or to delete the threaded versions:
sudo dpkg -r --force-depends xfree86-base-threaded sudo dpkg -r --force-depends xfree86-shlibs-threaded sudo dpkg -r --force-depends xfree86-rootless-threaded sudo dpkg -r --force-depends xfree86-rootless-threaded-shlibs
FinkCommander also has a way to remove packages. In the source
window, select a package, and then in the Source Menu use
"Force Remove."
If you are using system-xfree86, see the previous question for removing it.
Install the version of xfree86 you want:
xfree86-base and xfree86-rootless
xfree86-base-threaded and
xfree86-rootless-threaded
by the usual means: "fink install" for source users,
"apt-get install" or dselect for
binaries.
Q7.4: I can't update libiconv.
A: If you get errors of the form:
libtool: link: cannot find the library `/sw/lib/libiconv.la'
you can solve this problem by running
fink remove gettext-dev fink install libiconv
Q7.5: I can't install a package because c++filt is missing. Where do I get it?
A: If you get errors of the form
xgcc: installation problem, cannot exec `c++filt': No such file or directory
since updating to Tiger, then you need to do the following:
- Reinstall
BSD.pkg(from your installation media). If/usr/bin/c++filtdoesn't appear, keep trying.
You also might also need to make sure you don't have any ancient Developer/Xcode Tools stuff laying around:
- 10.4: Flush out your old Xcode Tools versions via running
/Developer/Tools/uninstall-devtools.plin a terminal. Then (re)install XCode (2.4.1 or later). - 10.5: Flush out your old Xcode Tools versions via running
/Developer/Library/uninstall-devtoolsin a terminal. Then (re)install Xcode (3.0 or later).
Q7.6: Fink refuses to update the gettext package,
complaining that the dependencies are in an inconsistent state.
A: After running fink selfupdate to be sure you
have the latest versions, try fink update gettext-tools.
An old version of the gettext-tools package may be
preventing you from updating gettext.
Q7.7: I can't install gtk+2 on OS 10.5
A: Typically this involves missing libraries, such as: /usr/X11/lib/libXrandr.2.0.0.dylib or
/usr/X11/lib/libXdamage.1.1.0.dylib (or other versions of libraries in
/usr/X11/lib/).
The current wisdom on the best fix for such an issue is to install Xcode 3.1.3 or later.
Q7.8: I'm having issues with a package that isn't listed here.
A: Since package problems tend to be transient, we've decided to put them up on the Fink wiki. Check the Package issues page.