Menu

Build Failures

Help
2013-12-25
2018-04-06
  • Dimitris Menounos

    Hi, I am facing problems building projectM. I use Ubuntu 13.10. I have installed the following librearies:

    libqt4-dev
    libgl1-mesa-glx
    libgl1-mesa-dri
    libgl1-mesa-dev
    libglu1-mesa-dev
    liborc-dev
    libpulse-dev
    libftgl-dev
    libsdl1.2-dev
    libglew1.5-dev
    libvisual-0.4-dev
    

    From the "projectM-complete-2.1.0-Source/build" directory I run:

    cmake -DCMAKE_INSTALL_PREFIX=/home/dmen/Programs/projectm ..
    make
    

    I get the following error:

    Scanning dependencies of target projectM-test
    [ 46%] Building CXX object src/projectM-test/CMakeFiles/projectM-test.dir/projectM-test.o
    [ 47%] Building CXX object src/projectM-test/CMakeFiles/projectM-test.dir/video_init.o
    [ 48%] Building CXX object src/projectM-test/CMakeFiles/projectM-test.dir/ConfigFile.o
    [ 49%] Building CXX object src/projectM-test/CMakeFiles/projectM-test.dir/getConfigFilename.o
    Linking CXX executable projectM-test
    /usr/bin/ld: CMakeFiles/projectM-test.dir/projectM-test.o: undefined reference to symbol 'glEnd'
    /usr/lib/fglrx/libGL.so.1: error adding symbols: DSO missing from command line
    collect2: error: ld returned 1 exit status
    make[2]: *** [src/projectM-test/projectM-test] Error 1
    make[1]: *** [src/projectM-test/CMakeFiles/projectM-test.dir/all] Error 2
    make: *** [all] Error 2
    

    I tried to circumvent this by changing: OPTION(INCLUDE-PROJECTM-TEST "Build the projectM test suite" ON) to OFF. Now the compilation went through to 100% but failed at make install:

    ...

    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM.so.2.1.0
    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM.so.2
    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM.so
    -- Installing: /home/dmen/Programs/projectm/include/libprojectM-qt/qprojectm_mainwindow.hpp
    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM-qt.so.1.10
    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM-qt.so.1
    -- Installing: /home/dmen/Programs/projectm/lib/libprojectM-qt.so
    -- Removed runtime path from "/home/dmen/Programs/projectm/lib/libprojectM-qt.so.1.10"
    -- Installing: /home/dmen/Programs/projectm/lib/pkgconfig/libprojectM-qt.pc
    -- Installing: /home/dmen/Programs/projectm/share/pixmaps/prjm16-transparent.svg
    -- Installing: /home/dmen/Programs/projectm/bin/projectM-pulseaudio
    -- Removed runtime path from "/home/dmen/Programs/projectm/bin/projectM-pulseaudio"
    -- Installing: /home/dmen/Programs/projectm/share/applications/projectM-pulseaudio.desktop
    -- Installing: /usr/lib/x86_64-linux-gnu/libvisual-0.4/actor/libprojectM_libvisual.so
    CMake Error at src/projectM-libvisual/cmake_install.cmake:50 (FILE):
      file INSTALL cannot copy file
      "/home/dmen/Downloads/projectM-complete-2.1.0-Source/build/src/projectM-libvisual/libprojectM_libvisual.so"
      to
      "/usr/lib/x86_64-linux-gnu/libvisual-0.4/actor/libprojectM_libvisual.so".
    Call Stack (most recent call first):
      src/cmake_install.cmake:40 (INCLUDE)
      cmake_install.cmake:37 (INCLUDE)
    
    make: *** [install] Error 1
    

    I see that it tries to write stuff to "/usr/lib/" which I specifically tried to avoid (I set the CMAKE_INSTALL_PREFIX parameter). Ofcource the installation does not work. Any help?

     

    Last edit: Dimitris Menounos 2013-12-25
    • Dimitris Menounos

      I set OPTION(INCLUDE-PROJECTM-LIBVISUAL "Build the projectM libvisual client" OFF) and run "make" and "make install" without a CMAKE_INSTALL_PREFIX. No compile errors, here are the installed binaries:

      ls -la /usr/local/bin/
      -rwxr-xr-x  1 root root 179913 Δεκ  25 16:38 projectM-pulseaudio
      
      ls -la /usr/local/lib/
      lrwxrwxrwx  1 root root       19 Δεκ  25 16:38 libprojectM-qt.so -> libprojectM-qt.so.1
      lrwxrwxrwx  1 root root       22 Δεκ  25 16:38 libprojectM-qt.so.1 -> libprojectM-qt.so.1.10
      -rw-r--r--  1 root root   575446 Δεκ  25 16:38 libprojectM-qt.so.1.10
      lrwxrwxrwx  1 root root       16 Δεκ  25 16:38 libprojectM.so -> libprojectM.so.2
      lrwxrwxrwx  1 root root       20 Δεκ  25 16:38 libprojectM.so.2 -> libprojectM.so.2.1.0
      -rw-r--r--  1 root root  1517727 Δεκ  25 16:38 libprojectM.so.2.1.0
      

      However it does not run:

      ~$ projectM-pulseaudio 
      projectM-pulseaudio: error while loading shared libraries: libprojectM-qt.so.1: cannot open shared object file: No such file or directory
      
       
      • Dimitris Menounos

        One step closer:

        ~$ LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
        

        Still fail:

        ~$ projectM-pulseaudio 
        dir:/usr/local/share/projectM/config.inp 
        reading ~/.projectM/config.inp 
        [projectM] config file: /home/dmen/.projectM/config.inp
        No Textures Loaded from "/usr/local"/share/projectM/textures
        Could not open font file: "/usr/local/share/projectM/fonts/Vera.ttf"
        

        Man I wish that installing stuff in linux would be easier!

         

        Last edit: Dimitris Menounos 2013-12-25
  • amoe

    amoe - 2014-01-01

    You need to either put the fonts where they are expected, or you can modify the font options in ~/.projectM/config.inp to point to the correct paths.

     
  • Jonny

    Jonny - 2018-04-06

    Thanks again amoe! You're very helpful!!!

    So, I just noticed the evidence of one of the errors in this code... In the penultimate line of quoted code of Dimitris' last post, which reads:
    No Textures Loaded from "/usr/local"/share/projectM/textures

    Notice the quotation mark is out of place. This (among other errors) has to be fixed before compiling the code because that incorrect path (if I'm not mistaken) is integrated into the code and creates a problem which can't be properly circumvented because even though you can modify the location of the textures, it only modifies the part that's inside the quotation-and the remaining bit doesn't combine properly and basically breaks loading textures no matter what you do.

    Of course, the REAL problem with this project is that it doesn't support pixel shaders v2... And this support is essential for all of the really good Milkdrop v2 presets that we all love. Furthermore, I've been told that it is impossible to support these shaders on Mac! I keep hoping that information is incorrect, but the evidence is piling up on the wrong side...

    @amoe: you seem knowledgeable as well as helpful, and you've posted on here with in the last 2 years... Can you shed any light on the topic of v2 pixel shader support in projectM (said to be provided by the CG nvidia libraries)?

     

    Last edit: Jonny 2018-04-06

Log in to post a comment.