Menu

#2923 -install_name badly set because of LIB_RUNTIME_DIR badly set

open
5
2011-09-16
2011-09-16
moulinier
No

As this bug is really similar to bug ID: 2965133, I copy most of it here.

I try to build Tk 8.6 X11 version on Mac OSX 10.5.8
I build it with the current Tk HEAD (just cd tk/unix; configure --prefix=/usr/local/TclTk8.6 ; make ; make install, and it compiles without complaining. But launching wish8.6 gives :

dyld: Library not loaded: /usr/local/TclTk8.6/lib:/usr/X11/lib

As far as I can tell, the problem is that LIB_RUNTIME_DIR is being set up as a colon-separated list of directories, which is then copied to DYLIB_INSTALL_DIR, which in turn is treated as just one directory. Makefile.in sets it up thus:

DYLIB_INSTALL_DIR = ${LIB_RUNTIME_DIR}

and this variable is only used in configure.in, thus:

TK_SHLIB_LD_EXTRAS="${TK_SHLIB_LD_EXTRAS}"' -install_name "${DYLIB_INSTALL_DIR}"/${TK_LIB_FILE}'

FWIW, manually editing the build/tk/*/Makefile to remove the second components from the definition of LIB_RUNTIME_DIR made wish running again.

Discussion

  • moulinier

    moulinier - 2011-09-16

    BEWARE !! I'm corry, I completely forgot to mention that this bug arises only when you force Tk to compile with Xft enabled ! Xft are enabled by default, but configure doesn't find W11/Xft/Xft.h. To solve that, thanks to Kevin Walzer, you should configure with :

    env CPPFLAGS="$(xft-config --cflags) -I/usr/include/X11" /bin/sh configure ==prefix=/usr/include/TclTk8.6

     
  • Daniel A. Steffen

    • assigned_to: das --> wordtech