Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't build on OSX #10

Open
raghavio opened this issue Apr 18, 2015 · 0 comments
Open

Can't build on OSX #10

raghavio opened this issue Apr 18, 2015 · 0 comments

Comments

@raghavio
Copy link

Hello,
I'm trying to make this build but not getting any success.

I don't really know how to use cmake and make stuff. I just need the bin so that I can use it with another language.

This is what I get when I do 'cmake .'

[18/04/15 22:55:58][Raghav's:lastfmfpclient]$ cmake .
-- The C compiler identification is AppleClang 6.0.0.6000057
-- The CXX compiler identification is AppleClang 6.0.0.6000057
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
CMake Warning (dev):
  Policy CMP0042 is not set: MACOSX_RPATH is enabled by default.  Run "cmake
  --help-policy CMP0042" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

  MACOSX_RPATH is not specified for the following targets:

   fplib_shared

This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
-- Build files have been written to: /usr/local/Cellar/lastfmfpclient

and this is what I get when I do 'make install'

[18/04/15 22:56:25][Raghav's:lastfmfpclient]$ make install
Scanning dependencies of target fplib_shared
[  9%] Building CXX object CMakeFiles/fplib_shared.dir/src/fplib/Filter.cpp.o
[ 18%] Building CXX object CMakeFiles/fplib_shared.dir/src/fplib/FingerprintExtractor.cpp.o
[ 27%] Building CXX object CMakeFiles/fplib_shared.dir/src/fplib/OptFFT.cpp.o
Linking CXX shared library lib/libfplib.dylib
Undefined symbols for architecture x86_64:
  "_fftwf_destroy_plan", referenced from:
      fingerprint::OptFFT::~OptFFT() in OptFFT.cpp.o
  "_fftwf_execute", referenced from:
      fingerprint::OptFFT::process(float*, unsigned long) in OptFFT.cpp.o
  "_fftwf_free", referenced from:
      fingerprint::OptFFT::~OptFFT() in OptFFT.cpp.o
  "_fftwf_malloc", referenced from:
      fingerprint::OptFFT::OptFFT(unsigned long) in OptFFT.cpp.o
  "_fftwf_plan_many_dft_r2c", referenced from:
      fingerprint::OptFFT::OptFFT(unsigned long) in OptFFT.cpp.o
  "_src_delete", referenced from:
      fingerprint::initCustom(fingerprint::PimplData&, int, int, unsigned int, unsigned int, int, unsigned int, int) in FingerprintExtractor.cpp.o
      fingerprint::PimplData::~PimplData() in FingerprintExtractor.cpp.o
  "_src_new", referenced from:
      fingerprint::initCustom(fingerprint::PimplData&, int, int, unsigned int, unsigned int, int, unsigned int, int) in FingerprintExtractor.cpp.o
  "_src_process", referenced from:
      fingerprint::FingerprintExtractor::process(short const*, unsigned long, bool) in FingerprintExtractor.cpp.o
  "_src_short_to_float_array", referenced from:
      fingerprint::src_short_to_float_and_mono_array(short const*, float*, int, int) in FingerprintExtractor.cpp.o
  "_src_strerror", referenced from:
      fingerprint::FingerprintExtractor::process(short const*, unsigned long, bool) in FingerprintExtractor.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libfplib.dylib] Error 1
make[1]: *** [CMakeFiles/fplib_shared.dir/all] Error 2
make: *** [all] Error 2

Also, in main.cpp

// DO NOT CHANGE THOSE!
const char FP_SERVER_NAME[]       = "ws.audioscrobbler.com/fingerprint/query/";
const char METADATA_SERVER_NAME[] = "http://ws.audioscrobbler.com/2.0/";
const char PUBLIC_CLIENT_NAME[]   = "fp client 1.6";
const char HTTP_POST_DATA_NAME[]  = "fpdata";

// if you want to use the last.fm fingerprint library in your app you'll need
// your own key
const char LASTFM_API_KEY[] = "2bfed60da64b96c16ea77adbf5fe1a82";

Do I have to change anything else other than API key?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant