Problemas com bibliotecas Qt durante a instalação do Gnu Octave 4.0.0 a partir do código-fonte

3

Eu sei que problemas semelhantes a isso surgiram. Eu tentei todas as técnicas de depuração que eu ouvi falar. Certifiquei-me de baixar todas as dependências do Qt4 do seguinte link de fonte . Eu tentei localizar os cflags e bibliotecas do QtGui com o pkg-config e adicioná-los manualmente ao comando ./configure. Eu até tentei adicionar o qt cflags / libs ao makefile. No momento, estou configurando com:

./configure --enable-shared --disable-static --enable-jit --prefix=/opt/octave4.0

e a cauda da minha saída é:

  Qt CPPFLAGS:                 
  Qt LDFLAGS:                  
  Qt libraries:                
  READLINE libraries:          -lreadline
  Sndfile CPPFLAGS:             
  Sndfile LDFLAGS:              
  Sndfile libraries:           -lsndfile  
  TERM libraries:              -lncurses
  UMFPACK CPPFLAGS:            
  UMFPACK LDFLAGS:             
  UMFPACK libraries:           -lumfpack
  X11 include flags:           
  X11 libraries:               -lX11
  Z CPPFLAGS:                  
  Z LDFLAGS:                   
  Z libraries:                 -lz

  Default pager:               less
  gnuplot:                     gnuplot

  Build Octave GUI:                   no
  JIT compiler for loops:             yes
  Build Java interface:               yes
  Do internal array bounds checking:  no
  Build static libraries:             no
  Build shared libraries:             yes
  Dynamic Linking:                    yes (dlopen)
  Include support for GNU readline:   yes
  64-bit array dims and indexing:     no
  OpenMP SMP multithreading:          yes
  Build cross tools:                  no

configure: WARNING: Qt libraries not found -- disabling GUI
configure: 
configure: NOTE: Libraries or auxiliary programs may be skipped if they are
configure: NOTE: not found OR if they are missing required features on your
configure: NOTE: system. 

Estou oficialmente preso ...

    
por errolflynn 09.08.2015 / 02:37

2 respostas

1

O que não é óbvio (ou instalado com o octave builddep sugerido pelo INSTALL.OCTAVE) é que o Octave quer qt4, eu tentei primeiro instalar os pacotes qt5 dev.

O que eu fiz e que funcionou foi:

sudo apt-get install libqt4-opengl-dev libqt4-private-dev libqt4pas-dev

mas ler a página com a qual você fez o link me faz acreditar que você precisa (e isso inclui os pacotes que eu já tinha instalado:

sudo apt-get install libqt4-dev libqtcore4 libqtwebkit4 libqt4-network libqtgui4 libqt4-opengl-dev

Depois disso, o ./configure funcionou bem e detectou qt.

O grande comando, suporte a tudo, o comando listado na parte inferior parece fazer a coisa certa para instalar dependências também:

sudo apt-get install gcc g++ gfortran make libblas-dev liblapack-dev libpcre3-dev libarpack2-dev libcurl4-gnutls-dev epstool libfftw3-dev transfig libfltk1.3-dev libfontconfig1-dev libfreetype6-dev libgl2ps-dev libglpk-dev libreadline-dev gnuplot-x11 libgraphicsmagick++1-dev libhdf5-serial-dev openjdk-8-jdk libsndfile1-dev llvm-dev lpr texinfo libgl1-mesa-dev libosmesa6-dev pstoedit portaudio19-dev libqhull-dev libqrupdate-dev libqscintilla2-dev libqt4-dev libqtcore4 libqtwebkit4 libqt4-network libqtgui4 libqt4-opengl-dev libsuitesparse-dev texlive libxft-dev zlib1g-dev autoconf automake bison flex gperf gzip icoutils librsvg2-bin libtool perl rsync tar

Mas isso pode facilmente instalar muito mais dependências que você realmente precisa.

    
por LovesTha 18.08.2016 / 02:16
0

Não tenho certeza de qual versão funcionou (Qt4 ou Qt5), mas tente instalar os pacotes retornados pela saída deste comando:

apt-cache search libqt5 | grep -e 'network' -e 'core' -e 'gui' -e 'opengl'

Na minha máquina, isso dá:

libqt5core5a - Qt 5 core module
libqt5gui5 - Qt 5 GUI module
libqt5network5 - Qt 5 network module
libqt5opengl5 - Qt 5 OpenGL module
libqt5opengl5-dev - Qt 5 OpenGL library development files

Você pode tentar algo semelhante, substituindo qt5 por qt4 no comando acima.

O pacote opengl não é mencionado em INSTALL.OCTAVE, eu encontrei olhando pelo script de configuração, na linha

QT_MODULES="QtCore QtGui QtNetwork QtOpenGL"

Isso é o que fez funcionar para mim.

    
por mondaugen 09.03.2016 / 01:23