我按照这里给出的说明通过Homebrew安装了Octave。
当我尝试生成绘图时,我收到以下消息:
Fontconfig error: Cannot load default config file
warning: could not match any font: *-normal-normal-10
warning: called from
axes at line 66 column 10
gca at line 58 column 9
newplot at line 148 column 8
surf at line 70 column 9
sombrero at line 65 column 5
然后,我收到一长串以下消息:
warning: ft_render: unable to load appropriate font
warning: could not match any font: *-normal-normal-10
通常情节出现一次,但如果我再次调用它,那么 Octave 会退出并显示以下消息。
panic: Segmentation fault: 11 -- stopping myself...
attempting to save variables to 'octave-workspace'...
warning: unable to open 'octave-workspace' for writing...
warning: called from
__gnuplot_drawnow__>gnuplot_trim_term at line 368 column 10
__gnuplot_drawnow__>gnuplot_set_term at line 119 column 20
__gnuplot_drawnow__ at line 84 column 16
Segmentation fault: 11
在讨论类似的错误时,我经常看到对/etc/fonts/fonts.conf的引用。我的/etc 目录不包含字体子目录。这可能是问题的根源,但我不知道如何解决。当我跑步时,brew install fontconfig
,我Warning: fontconfig-2.11.1_1 already installed
。当我跑sudo find / -name fonts.conf
时,我得到了/opt/X11/lib/X11/fontconfig/fonts.conf
。
brew doctor
产生以下警告,这些警告可能是相关的,我不知道如何解决(不包括卸载 Anaconda):
Warning: Anaconda is known to frequently break Homebrew builds, including Vim
and MacVim, due to bundling many duplicates of system and Homebrew-available
tools.
If you encounter a build failure please temporarily remove Anaconda
from your $PATH and attempt the build again prior to reporting the
failure to us. Thanks!
Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
/Users/greg/anaconda/bin/curl-config
/Users/greg/anaconda/bin/freetype-config
/Users/greg/anaconda/bin/libdynd-config
/Users/greg/anaconda/bin/libpng-config
/Users/greg/anaconda/bin/libpng16-config
/Users/greg/anaconda/bin/python-config
/Users/greg/anaconda/bin/python2-config
/Users/greg/anaconda/bin/python2.7-config
/Users/greg/anaconda/bin/xml2-config
/Users/greg/anaconda/bin/xslt-config
我正在运行OS X 10.11.3(El Capitan)。
试试
brew uninstall fontconfig
brew install fontconfig --universal
如果你没有或不想使用Xquartz,你可以使用Qt
brew uninstall gnuplot
brew install gnuplot --with-qt
实际上,这不是Octave的问题,而是它复杂的设置和其他实用程序(尤其是fontconfig)的错误配置。
为了正常工作,您需要手动设置fontconfig的路径,这样它就不会在不适当的目录中查找字体(/etc/fonts
适用于Linux安装,但OS X XQuartz会转到不同的地方)。
您应该运行命令export FONTCONFIG_PATH=/opt/X11/lib/X11/fontconfig
以正确的方式设置字体配置。您还可以将线路export FONTCONFIG_PATH=/opt/X11/lib/X11/fontconfig
添加到~/.bash_profile
并重新启动终端,因此您无需再运行此命令。