使用Homebrew安装Graphviz时出现tclstub问题

4

当尝试安装graphviz时,Homebrew退出。

CCLD   libtcldot_builtin.la
ld: library not found for -ltclstub8.6
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [libtcldot.la] Error 1
make[4]: *** Waiting for unfinished jobs....
ld: library not found for -ltclstub8.6
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[4]: *** [libtcldot_builtin.la] Error 1
make[3]: *** [install-recursive] Error 1
make[2]: *** [install-recursive] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install] Error 2

问题似乎在于此特定库不是安装在计算机上的那个库。

/System/Library/Frameworks/Tcl.framework/Versions/8.4/libtclstub8.4.a
/System/Library/Frameworks/Tcl.framework/Versions/8.5/libtclstub8.5.a
/System/Library/Frameworks/Tcl.framework/libtclstub8.5.a
/usr/lib/libtclstub8.5.a

看起来网络上有很多人尝试使用homebrew安装graphviz时遇到了问题。但是,这些解决方案似乎对我无效。


这是似乎阻止进程的错误:ld: library not found for -ltclstub8.6然而,locate显示:/usr/lib/libtclstub8.6.a /usr/local/Cellar/tcl-tk/8.6.0/lib/libtclstub8.6.a有人能帮我解决这个问题吗?或者至少提供一些好的/有用的参考资料。https://dev59.com/pmgu5IYBdhLWcg3wP01m和https://dev59.com/NWfWa4cB1Zd3GeqPjbCZ#12164207不要回答我的问题! - tipanverella
2个回答

3

这个软件包似乎最近已经移动了位置:

brew install homebrew/dupes/tcl-tk
sudo ln -s /usr/local/Cellar/tcl-tk/8.6.0/lib/libtcl8.6.dylib /usr/local/lib/libtcl8.6.dylib
sudo ln -s /usr/local/Cellar/tcl-tk/8.6.0/lib/libtk8.6.dylib /usr/local/lib/libtk8.6.dylib
sudo ln -s /usr/lib/libtclstub8.5.a /usr/lib/libtclstub8.6.a
sudo ln -s /usr/lib/libtkstub8.5.a /usr/lib/libtkstub8.6.a
brew reinstall graphviz

2

根据这里的答案,似乎是这样的

remove tcl-tk
brew -v install tcl-tk --with-tk
sudo ln -s /usr/local/Cellar/tcl-tk/8.6.0/lib/libtcl8.6.dylib /usr/local/lib/libtcl8.6.dylib
sudo ln -s /usr/local/Cellar/tcl-tk/8.6.0/lib/libtk8.6.dylib /usr/local/lib/libtk8.6.dylib
sudo ln -s /usr/lib/libtclstub8.5.a /usr/lib/libtclstub8.6.a
sudo ln -s /usr/lib/libtkstub8.5.a /usr/lib/libtkstub8.6.a
brew update
brew upgrade
brew -v reinstall graphviz

做到了这一点。最后两个链接是按照这里的建议完成的。希望这能帮助其他人。


4
提醒那些已经升级到10.11(El Capitan)的用户注意 - 这将不起作用,因为引入了rootless。如果我找到解决方案,我会回来告诉大家。 - gnuchu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接