adbrant / ArableInstruments

BSD 3-Clause "New" or "Revised" License
29 stars 4 forks source link

can't compile on linux #1

Closed rbreckenridge closed 6 years ago

rbreckenridge commented 6 years ago

Not a c programmer, not sure if I'm just missing something obvious?

robb@skippy:~/src/Rack/plugins/ArableInstruments$ make
g++ -fshort-enums -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -MMD -g -O3 -march=nocona -ffast-math -fno-finite-math-only -Wall -Wextra -Wno-unused-parameter -DARCH_LIN -Wsuggest-override -std=c++11 -c -o build/src/AudibleInstruments.cpp.o src/AudibleInstruments.cpp
In file included from src/AudibleInstruments.cpp:1:0:
src/AudibleInstruments.hpp:15:8: warning: ‘virtual rack::Menu* BraidsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
  Menu *createContextMenu();
        ^
src/AudibleInstruments.hpp:20:8: warning: ‘virtual rack::Menu* ElementsWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
  Menu *createContextMenu();
        ^
src/AudibleInstruments.hpp:77:8: warning: ‘virtual rack::Menu* FramesWidget::createContextMenu()’ can be marked override [-Wsuggest-override]
  Menu *createContextMenu();
        ^
src/AudibleInstruments.cpp: In function ‘void init(rack::Plugin*)’:
src/AudibleInstruments.cpp:9:10: error: ‘struct rack::Plugin’ has no member named ‘name’
  plugin->name = "Arable Instruments";
          ^
src/AudibleInstruments.cpp:10:10: error: ‘struct rack::Plugin’ has no member named ‘homepageUrl’
  plugin->homepageUrl = "https://github.com/adbrant/ArableInstruments";
          ^
src/AudibleInstruments.cpp:12:72: error: no matching function for call to ‘createModel(rack::Plugin*&, const char [5], const char [27])’
  createModel<CloudsWidget>(plugin, "Joni", "Joni - Texture Synthesizer");
                                                                        ^
In file included from src/AudibleInstruments.hpp:1:0,
                 from src/AudibleInstruments.cpp:1:
../../include/rack.hpp:21:8: note: candidate: template<class TModuleWidget> rack::Model* rack::createModel(std::__cxx11::string, std::__cxx11::string, std::__cxx11::string, std::__cxx11::string)
 Model *createModel(std::string manufacturerSlug, std::string manufacturerName, std::string slug, std::string name) {
        ^
../../include/rack.hpp:21:8: note:   template argument deduction/substitution failed:
src/AudibleInstruments.cpp:12:72: note:   cannot convert ‘plugin’ (type ‘rack::Plugin*’) to type ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’
  createModel<CloudsWidget>(plugin, "Joni", "Joni - Texture Synthesizer");
                                                                        ^
../../compile.mk:53: recipe for target 'build/src/AudibleInstruments.cpp.o' failed
make: *** [build/src/AudibleInstruments.cpp.o] Error 1
robb@skippy:~/src/Rack/plugins/ArableInstruments$ 
adbrant commented 6 years ago

I think you might be synced to a different revision of the Rack repo, you can sync it to v0.4.0 with 'git checkout v0.4.0'

rbreckenridge commented 6 years ago

Aw yeah, so you were right about that, I was on Rack's master branch. I've added the current branch to my prompt so I don't get lost.

So using Rack v0.4.0 and your master, I now receive a different error:

14:00:08-robb:~/src/Rack ((v0.4.0))$ cd plugins/ArableInstruments/
14:00:15-robb:~/src/Rack/plugins/ArableInstruments (master)$ make
g++ -fshort-enums -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=dev -DVERSION_dev -MMD -O3 -march=nocona -ffast-math -Wall -g -DARCH_LIN -std=c++11 -c -o build/src/AudibleInstruments.cpp.o src/AudibleInstruments.cpp
g++ -fshort-enums -DTEST -I./eurorack -Wno-unused-local-typedefs -fPIC -I../../include -I../../dep/include -DVERSION=dev -DVERSION_dev -MMD -O3 -march=nocona -ffast-math -Wall -g -DARCH_LIN -std=c++11 -c -o build/src/Clouds.cpp.o src/Clouds.cpp
In file included from src/Clouds.cpp:3:0:
../../include/dsp/samplerate.hpp:4:24: fatal error: samplerate.h: No such file or directory
compilation terminated.
../../compile.mk:50: recipe for target 'build/src/Clouds.cpp.o' failed
make: *** [build/src/Clouds.cpp.o] Error 1
14:00:20-robb:~/src/Rack/plugins/ArableInstruments (master)$ 
adbrant commented 6 years ago

You might not have the 'eurorack' repo with the clouds source, you can get it by running 'git submodule update --init --recursive' in the base folder.

rbreckenridge commented 6 years ago

ParableInstruments-ubuntu.zip ArableInstruments-ubuntu.zip

Here are the .so files for ubuntu 16.04 if you're interested.... thanks a million for pointing me in the right direction with getting em built!