Menu

Build on RPI fails with 4.7.0 - RC1

Aurélien
2014-04-14
2014-04-15
  • Aurélien

    Aurélien - 2014-04-14

    Hi!

    I'm trying to build QLC+ on a RPI for several weeks but always end with an error due to linked libs:

    g++ -Wl,-O1 -o bus_test bus_test.o moc_bus_test.o -L../../src -L/usr/lib/arm-linux-gnueabihf -lqlcplusengine -lQtTest -lQtScript -lQtXml -lQtGui -lQtCore -lpthread
    ../../src/libqlcplusengine.so: undefined reference to fftw_malloc' ../../src/libqlcplusengine.so: undefined reference tofftw_free'
    ../../src/libqlcplusengine.so: undefined reference to fftw_execute' ../../src/libqlcplusengine.so: undefined reference tofftw_plan_dft_r2c_1d'
    ../../src/libqlcplusengine.so: undefined reference to `fftw_destroy_plan'
    collect2: ld returned 1 exit status
    make[3]: [bus_test] Erreur 1
    make[3]: quittant le répertoire « /home/pi/qlcplus-4.7.0.RC1/engine/test/bus »
    make[2]:
    [sub-bus-make_default-ordered] Erreur 2
    make[2]: quittant le répertoire « /home/pi/qlcplus-4.7.0.RC1/engine/test »
    make[1]: [sub-test-make_default-ordered] Erreur 2
    make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0.RC1/engine »
    make:
    [sub-engine-make_default-ordered] Erreur 2

    It seems this error occurs when the libs aren't at the end of the line of the gcc command, but even by moving ($LIBS) at the ends of the lines in the Makefiles in which they weren't, I just don't get it.

    By the way, fftw dev files are installed:
    ii libfftw3-3:armhf 3.3.2-3.1 armhf Library for computing Fast Fourier Transforms
    ii libfftw3-bin 3.3.2-3.1 armhf Library for computing Fast Fourier Transforms -
    ii libfftw3-dev:armhf 3.3.2-3.1 armhf Library for computing Fast Fourier Transforms -

    Any idea?

     
  • Massimo Callegari

    Aurelien, you posted again the same thing and again on the wrong forum.
    https://sourceforge.net/p/qlcplus/discussion/development/thread/e3231741/

    Can you please give more details about what you're doing ?
    For example the GCC version.
    Also, try with QLC+ 4.7.0 instead of RC1.

     
  • Aurélien

    Aurélien - 2014-04-14

    Oh sorry, I thought the first one didn't reach anything, and had to subscribe to sourceforge.

    As far as gcc is concerned, here it is:
    dpkg -l gcc*
    Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
    | État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
    |/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
    ||/ Nom Version Architecture Description
    +++-=====================-===============-===============-================================================
    ii gcc 4:4.6.3-8 armhf GNU C compiler
    un gcc-4.1 <aucun> (aucune description n'est disponible)
    un gcc-4.3 <aucun> (aucune description n'est disponible)
    un gcc-4.4 <aucun> (aucune description n'est disponible)
    un gcc-4.5 <aucun> (aucune description n'est disponible)
    ii gcc-4.5-base:armhf 4.5.3-12+rpi1 armhf The GNU Compiler Collection (base package)
    ii gcc-4.6 4.6.3-14+rpi1 armhf GNU C compiler
    ii gcc-4.6-base:armhf 4.6.3-14+rpi1 armhf GCC, the GNU Compiler Collection (base package)
    un gcc-4.6-doc <aucun> (aucune description n'est disponible)
    un gcc-4.6-locales <aucun> (aucune description n'est disponible)
    ii gcc-4.7-base:armhf 4.7.2-5+rpi1 armhf GCC, the GNU Compiler Collection (base package)
    un gcc-doc <aucun> (aucune description n'est disponible)
    un gcc-multilib <aucun> (aucune description n'est disponible)

    I'm with raspbian stable, and I'm going to try the 4.7.0 right now, but it takes a bit on the RPI (don't know how to build something on an arch for another arch, and don't have the time to look for this right now).

     
  • Aurélien

    Aurélien - 2014-04-14

    (weird, I do have post a comment, but it doesn't appear - hope I'm not messing up again!!)

    So, I've tried with 4.7.0, but I finally reach an error:

    make[3]: quittant le répertoire « /home/pi/qlcplus-4.7.0/plugins/midi/alsa »
    make[2]: quittant le répertoire « /home/pi/qlcplus-4.7.0/plugins/midi »
    cd ola/ && /usr/bin/qmake /home/pi/qlcplus-4.7.0/plugins/ola/ola.pro -o Makefile
    cd ola/ && make -f Makefile
    make[2]: entrant dans le répertoire « /home/pi/qlcplus-4.7.0/plugins/ola »
    /usr/bin/uic-qt4 configureolaio.ui -o ui_configureolaio.h
    g++ -c -pipe -Werror -Wno-unused-local-typedefs -O2 -Wall -W -D_REENTRANT -fPIC -DQT_WEBKIT -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../interfaces -I. -I. -o olaio.o olaio.cpp
    In file included from olaio.cpp:26:0:
    qlclogdestination.h:25:25: fatal error: ola/Logging.h: Aucun fichier ou dossier de ce type
    compilation terminated.
    make[2]: [olaio.o] Erreur 1
    make[2]: quittant le répertoire « /home/pi/qlcplus-4.7.0/plugins/ola »
    make[1]:
    [sub-ola-make_default] Erreur 2
    make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/plugins »
    make: *** [sub-plugins-make_default-ordered] Erreur 2

    I suppose I would have to build it without ola support, but didn't find how by reading make -h and qmake -h.

     
    • Luis García-Tornel

      Hi Aurelien,

      I recommend reading the Linux Build HOWTO.

      To exclude some plugins from the build:

      If you want to exclude some [plugins] from the build process then just comment them out by placing the character # at the beginning of the plugin line in the file plugins/plugins.pro For example:
      #unix:SUBDIRS += ola

      To install the OLA (notice that you may need to install also additional packages to compile OLA. I needed: bison flex uuid-dev libcppunit-dev libprotobuf-dev libprotoc-dev)

      Acquire the latest tarball from the OLA webiste:
      http://code.google.com/p/open-lighting/downloads/list

      Extract the package and enter into the OLA folder. Then, as usual, type:

      ./configure --prefix=/usr
      make
      sudo make install

       
  • Aurélien

    Aurélien - 2014-04-15

    OK, thanks, so I removed ola from the plugins, and it finally built OK. But I couldn't install, it seems the /usr/share/qlcplus folder is not created :

    make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/webaccess »
    cd main/ && make -f Makefile install
    make[1]: entrant dans le répertoire « /home/pi/qlcplus-4.7.0/main »
    install -m 755 -p "qlcplus" "/usr/bin/qlcplus"
    strip "/usr/bin/qlcplus"
    make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/main »
    cd fixtures/ && make -f Makefile install
    make[1]: entrant dans le répertoire « /home/pi/qlcplus-4.7.0/fixtures »
    mkdir: impossible de créer le répertoire « /usr/share/qlcplus »: Aucun fichier ou dossier de ce type
    make[1]: [install_fixtures] Erreur 1
    make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/fixtures »
    make:
    [sub-fixtures-install_subtargets-ordered] Erreur 2

    (I've tried both with sudo and sudo su -)

    I precise I already managed to build QLC+ on a "standard" (AMD64) Debian machine, but on RPI, I'm way more noob!

     
    • Daniel Nyström

      Daniel Nyström - 2014-04-15

      Can you please prefix all your command with LANG=C, like this; LANG=C
      sudo make install

      2014-04-15 13:10 GMT+02:00 "Aurélien" orlammd@users.sf.net:

      OK, thanks, so I removed ola from the plugins, and it finally built OK. But
      I couldn't install, it seems the /usr/share/qlcplus folder is not created :

      make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/webaccess »
      cd main/ && make -f Makefile install
      make[1]: entrant dans le répertoire « /home/pi/qlcplus-4.7.0/main »
      install -m 755 -p "qlcplus" "/usr/bin/qlcplus"
      strip "/usr/bin/qlcplus"
      make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/main »
      cd fixtures/ && make -f Makefile install
      make[1]: entrant dans le répertoire « /home/pi/qlcplus-4.7.0/fixtures »
      mkdir: impossible de créer le répertoire « /usr/share/qlcplus »: Aucun
      fichier ou dossier de ce type
      make[1]: [install_fixtures] Erreur 1
      make[1]: quittant le répertoire « /home/pi/qlcplus-4.7.0/fixtures »
      make: [sub-fixtures-install_subtargets-ordered] Erreur 2

      (I've tried both with sudo and sudo su -)

      I precise I already managed to build QLC+ on a "standard" (AMD64) Debian
      machine, but on RPI, I'm way more noob!


      Build on RPI fails with 4.7.0 - RC1


      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/qlcplus/discussion/development/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

       
  • Aurélien

    Aurélien - 2014-04-15

    OK, correct, the problem came from the use of checkinstall.
    It's now built and working.
    Let's see what it gives.

     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.