andrewrk / node-groove

bindings to libgroove - music player backend library
MIT License
157 stars 16 forks source link

libgroove is installed but saying that cant open shared... #5

Closed gartz closed 10 years ago

gartz commented 10 years ago

I'm using Fedora 20, have installed libgroove:

Install the project...
-- Install configuration: ""
-- Installing: /usr/local/lib/libgroove.a
-- Installing: /usr/local/include/groove/groove.h
-- Installing: /usr/local/include/groove/queue.h
-- Installing: /usr/local/include/groove/encoder.h
-- Installing: /usr/local/lib/libgroove.so.3.1.1
-- Installing: /usr/local/lib/libgroove.so.3
-- Installing: /usr/local/lib/libgroove.so
-- Removed runtime path from "/usr/local/lib/libgroove.so.3.1.1"
-- Installing: /usr/local/include/grooveplayer/player.h
-- Installing: /usr/local/lib/libgrooveplayer.so.3.1.1
-- Installing: /usr/local/lib/libgrooveplayer.so.3
-- Installing: /usr/local/lib/libgrooveplayer.so
-- Removed runtime path from "/usr/local/lib/libgrooveplayer.so.3.1.1"
-- Installing: /usr/local/lib/libgrooveplayer.a
-- Installing: /usr/local/include/grooveloudness/loudness.h
-- Installing: /usr/local/lib/libgrooveloudness.so.3.1.1
-- Installing: /usr/local/lib/libgrooveloudness.so.3
-- Installing: /usr/local/lib/libgrooveloudness.so
-- Removed runtime path from "/usr/local/lib/libgrooveloudness.so.3.1.1"
-- Installing: /usr/local/lib/libgrooveloudness.a
-- Installing: /usr/local/include/groovefingerprinter/fingerprinter.h
-- Installing: /usr/local/lib/libgroovefingerprinter.so.3.1.1
-- Installing: /usr/local/lib/libgroovefingerprinter.so.3
-- Installing: /usr/local/lib/libgroovefingerprinter.so
-- Removed runtime path from "/usr/local/lib/libgroovefingerprinter.so.3.1.1"
-- Installing: /usr/local/lib/libgroovefingerprinter.a

But when I try to run the project it is showing this error:

/home/gartz/Projects/groovebasin/node_modules/groove/node_modules/bindings/bindings.js:83
        throw e
              ^
Error: libgroove.so.3: cannot open shared object file: No such file or directory
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at bindings (/home/gartz/Projects/groovebasin/node_modules/groove/node_modules/bindings/bindings.js:76:44)
    at Object.<anonymous> (/home/gartz/Projects/groovebasin/node_modules/groove/lib/index.js:1:97)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
npm ERR! weird error 8
npm ERR! not ok code 0
npm ERR! weird error 1
npm ERR! not ok code 0

I don't know what to do, because the lib is already installed.

andrewrk commented 10 years ago

Try running sudo ldconfig and try again.

gartz commented 10 years ago

now change to:

Error: libavfilter.so.4: cannot open shared object file: No such file or directory
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at bindings (/home/gartz/Projects/groovebasin/node_modules/groove/node_modules/bindings/bindings.js:76:44)
    at Object.<anonymous> (/home/gartz/Projects/groovebasin/node_modules/groove/lib/index.js:1:97)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
andrewrk commented 10 years ago

hmm. what version of libavfilter do you have installed?

andrewrk commented 10 years ago

could you try deleting the build folder in libgroove and re-run cmake and then paste the output?

gartz commented 10 years ago

v10, I have try the master branch, but it was throwing exception and not compile the libgroove

gartz commented 10 years ago

The result:

[gartz@localhost build]$ cmake ..
-- The C compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
Configuring libgroove version 3.1.1
Configuring libgrooveplayer version 3.1.1
Configuring libgrooveloudness version 3.1.1
Configuring libgroovefingerprinter version 3.1.1
-- Try C99 C flag = [ ]
-- Performing Test C99_FLAG_DETECTED
-- Performing Test C99_FLAG_DETECTED - Failed
-- Try C99 C flag = [-std=c99]
-- Performing Test C99_FLAG_DETECTED
-- Performing Test C99_FLAG_DETECTED - Success
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.28") 
-- checking for module 'libchromaprint'
--   package 'libchromaprint' not found
-- Found Chromaprint: /usr/local/lib/libchromaprint.so  
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found SDL2: /usr/local/lib/libSDL2main.a;/usr/local/lib/libSDL2.so;-lpthread  
-- Found LibAV: /usr/local (Required is at least version "10.0") found components:  avcodec avdevice avfilter avformat avutil swscale 

Installation Summary
--------------------
* Install Directory            : /usr/local
* Build libgroove              : yes
* Build libgrooveplayer        : yes
* Build libgrooveloudness      : yes
* Build libgroovefingerprinter : yes

Bundled Dependencies
--------------------
* SDL2                         : using system library
* libav                        : using system libraries
* libebur128                   : using system library

System Dependencies
-------------------
* C99 Compiler                 : OK
* threads                      : OK
* SDL2                         : OK
* ebur128                      : OK
* chromaprint                  : OK
* libavformat                  : OK
* libavcodec                   : OK
* libavfilter                  : OK
* libavutil                    : OK

If everything is looks good, proceed with
make

-- Configuring done
-- Generating done
-- Build files have been written to: /home/gartz/Projects/libgroove/build
andrewrk commented 10 years ago

That output looks good. I don't know why it would be not finding libav.

Hmm maybe - did you compile libav10 yourself? I think you have to use --enable-shared on libav's ./configure to make it work.

gartz commented 10 years ago

/usr/local/lib/libavfilter.so.4

andrewrk commented 10 years ago

Did you ever figure this out?

andrewrk commented 10 years ago

Things have changed since this issue was open. If this is still an issue, open another.