dholm / homebrew-sdr

Homebrew formulas for software defined radio
77 stars 40 forks source link

cubicsdr fails to build due to missing soapysdr on 10.11 #12

Closed girving closed 8 years ago

girving commented 9 years ago

I followed the instructions at https://github.com/cjcliffe/CubicSDR/wiki/Build-OSX---Homebrew, but got the following error message:

CMake Error at CMakeLists.txt:105 (find_package):
  Could not find a package configuration file provided by "SoapySDR"
  (requested version 0.4.0) with any of the following names:

    SoapySDRConfig.cmake
    soapysdr-config.cmake

  Add the installation prefix of "SoapySDR" to CMAKE_PREFIX_PATH or set
  "SoapySDR_DIR" to a directory containing one of the above files.  If
  "SoapySDR" provides a separate development package or SDK, be sure it has
  been installed.

The full logs are at https://gist.github.com/girving/04bfc73df8dcc0d9a1fc. In an attempt to fix this, I tried installing soapysdr as well, but it failed with

% brew install soapysdr --HEAD
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f python/CMakeFiles/_SoapySDR.dir/build.make python/CMakeFiles/_SoapySDR.dir/build
make[2]: *** No rule to make target `/usr/local/lib/libgnuradio-runtime.dylib', needed by `python/_SoapySDR.so'.  Stop.

Full details for the soapysdr failer are at https://gist.github.com/a0e2ad4e66dd24810cce.

guruofquality commented 9 years ago

For the error above, I think this line might be copy pasta: -DPYTHON_LIBRARY='#{HOMEBREW_PREFIX}/lib/libgnuradio-runtime.dylib' https://github.com/dholm/homebrew-sdr/blob/master/soapysdr.rb#L14

In any case, I have an official tap for Soapy SDR and the various support modules here: https://github.com/pothosware/homebrew-pothos/wiki

guruofquality commented 9 years ago

So the cubicsdr.rb should depend on soapysdr, and @cjcliffe -- the wiki page for homebrew instructions might need an update as well.

girving commented 9 years ago

Cool, soapysdr installed fine through the pothosware tap, so now I'm on to different errors building cubicsdr: https://gist.github.com/girving/cd1c53250ead4902e46a

In file included from /tmp/cubicsdr20151115-30539-1i4otjj/src/CubicSDR.cpp:14:
In file included from /tmp/cubicsdr20151115-30539-1i4otjj/src/CubicSDR.h:10:
In file included from /tmp/cubicsdr20151115-30539-1i4otjj/src/visual/PrimaryGLContext.h:11:
In file included from /tmp/cubicsdr20151115-30539-1i4otjj/src/demod/DemodulatorMgr.h:7:
In file included from /tmp/cubicsdr20151115-30539-1i4otjj/src/demod/DemodulatorInstance.h:7:
/tmp/cubicsdr20151115-30539-1i4otjj/src/demod/DemodulatorThread.h:67:5: error: unknown type name 'freqdem'; did you mean 'freqmodem'?
    freqdem demodFM;
    ^~~~~~~
    freqmodem
/usr/local/include/liquid/liquid.h:3129:30: note: 'freqmodem' declared here
typedef struct freqmodem_s * freqmodem;
                             ^
/tmp/cubicsdr20151115-30539-1i4otjj/src/sdr/SDRPostThread.cpp:23:16: error: use of undeclared identifier 'iirfilt_crcf_create_dc_blocker'
    dcFilter = iirfilt_crcf_create_dc_blocker(0.0005);
dholm commented 8 years ago

@guruofquality I have added the dependency now. @girving Looks like issue #11, brew reinstall --HEAD liquid-dsp should resolve the issue.

dholm commented 8 years ago

Closing this issue now. Please reopen if you are still having problems.