2016-02-07 28 views
21

Zainstalowałem Oktave przez Homebrew, używając instrukcji podanych here.Oktave błąd Fontconfig

Kiedy próbuję wygenerować wykres, pojawia się następujący komunikat:

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 

I wtedy uzyskać długą serię następujących komunikatów:

warning: ft_render: unable to load appropriate font 
warning: could not match any font: *-normal-normal-10 

pojawia się zazwyczaj raz fabuła, ale jeśli zadzwonię ponownie, Octave zakończy pracę z następującym komunikatem.

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 

W dyskusjach o podobnych błędach często widziałem odniesienia do /etc/fonts/fonts.conf. Mój katalog/etc nie zawiera podkatalogów fontów. To może być źródłem problemu, ale nie wiem, jak to naprawić. Po uruchomieniu, brew install fontconfig, otrzymuję Warning: fontconfig-2.11.1_1 already installed. Po uruchomieniu sudo find/-name fonts.conf otrzymuję /opt/X11/lib/X11/fontconfig/fonts.conf.

brew doctor produkuje następujące ostrzeżenia, które mogą być istotne, a które nie wiem jak to naprawić (skrót od odinstalowanie 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 

Używam OS X 10.11.3 (El Capitan).

Odpowiedz

36

W rzeczywistości nie jest to kwestia Octave, ale jej skomplikowana konfiguracja i błędna konfiguracja innych narzędzi (zwłaszcza fontconfig).

Do poprawnej pracy musisz ustawić ręcznie ścieżkę dla fontconfig, aby nie szukał czcionek w niewłaściwym katalogu (/etc/fonts działa dla instalacji Linuxa, ale OS X XQuartz idzie w inne miejsce).

Należy uruchomić polecenie export FONTCONFIG_PATH=/opt/X11/lib/X11/fontconfig, aby poprawnie skonfigurować fontconfig. Możesz również dodać linię export FONTCONFIG_PATH=/opt/X11/lib/X11/fontconfig do swojego ~/.bash_profile i ponownie uruchomić terminal, więc nie musisz już uruchamiać tego polecenia.

+1

Czy istnieje skuteczny sposób, aby nauczyć się tych rodzajów technik? Może książkę, którą umiem czytać, żeby zrozumieć, jak działają takie rzeczy jak profile bash i systemy plików typu Unix? – gsganden

+0

Niestety, nie mogę polecić czegoś konkretnego, pochodzi z doświadczenia, prób i błędów. Spędziłem około godziny, aby rozwiązać ten problem, publikując komunikaty o błędach i porównując problemy odtworzone przez innych z moją konfiguracją – OleGG

+3

Pomogło mi to - dzięki. Uwaga: aby to działało, musisz mieć zainstalowany http://www.xquartz.org/. – jameswilsterman

40

spróbować

brew uninstall fontconfig 

brew install fontconfig --universal 

jeśli nie mają lub nie chcą korzystać xquartz, można użyć qt

brew uninstall gnuplot 

brew install gnuplot --with-qt 
+2

Chciałbym móc powiedzieć, ile próbowałem, zanim znalazłem tę odpowiedź. Dziękuję bardzo –

+2

Pierwsze dwa polecenia zadziałały dla mnie. Dziękuję Ci! – Andi

+0

Masz przestarzałe ostrzeżenie na - brew install gnuplot --with-qt. To zadziałało: napar zainstalować gnuplot --with-qt5 – bsandhu