Closed lnikj closed 6 years ago
Yes Racks 0.5dev event model is changing so I'll need to catch up with it. I built it last night and had no warnings (however with override warning turned off) but the menus on the MIDI modules (mine and core) were not working, so I presume further work has happened since then. Will work on it again tonight. Thank you for the report.
OK just updated Rack 0.5dev and only a few changes made since my last commit. However, when I ran Rack I have no modules from the autosave, but was able to load from a .vcv file and they're all there. So maybe there's an issue with Rack's autosave?
On the warnings I've inspected them and I agree I need to fix things. However, apart from a different UI and going from 4 to 6 voices, MidiToCV.cpp is a direct copy of src/core/QuadMidiToCV.cpp which also needs to be updated. So I'm going to wait for that to happen and soon as it does I've bring it over to my module. So as things stand, the MIDI-C1 is a bit borked as the menus don't work.
Re the autosave do you mean just the gratrix modules or any modules?
Autosave seems to be working here on my Mac.
It was any modules, and only happened once after I did a rack update. So seems to have fixed it's self in the end for me.
I've just done a fresh 0.5dev build and built your latest commit but still the modules do not appear. I think I can see the culprit from the make run output:
MBP:Rack nik$ make run DYLD_FALLBACK_LIBRARY_PATH=dep/lib ./Rack Current working directory: /Users/nik/src/temp/Rack Global directory: ./ Local directory: ./ Loading plugins from ./plugins Loaded plugin ./plugins/AudibleInstruments/plugin.dylib Loaded plugin ./plugins/av500/plugin.dylib Loaded plugin ./plugins/Befaco/plugin.dylib Loaded plugin ./plugins/ESeries/plugin.dylib Loaded plugin ./plugins/Fundamental/plugin.dylib Loaded plugin ./plugins/hetrickcv/plugin.dylib Loaded plugin ./plugins/sonusmodular/plugin.dylib Failed to load library ./plugins/vcv-gratrix/plugin.dylib: dlopen(./plugins/vcv-gratrix/plugin.dylib, 2): Symbol not found: __ZN6Octave6Decode1sE Referenced from: ./plugins/vcv-gratrix/plugin.dylib Expected in: flat namespace in ./plugins/vcv-gratrix/plugin.dylib Loaded plugin ./plugins/VCVRack-Simple/plugin.dylib Loaded plugin ./plugins/VultModules/plugin.dylib Loaded font ./res/DejaVuSans.ttf Loading patch ./autosave.vcv Loading settings ./settings.json Saving settings ./settings.json Saving patch ./autosave.vcv
Hmm that's got me puzzled. Seem ok this end but I'm investigating right now. Just checking, did you do a make clean on my stuff after updating?
It's a completely clean install each time:
rm -rf vcv-gratrix && git clone https://github.com/gratrix/vcv-gratrix.git && cd vcv-gratrix && make && cd ..
Just done a clean check out of both rack and my modules (using your commands above) and it all seems to work here, I'm on Windows. I will keep thinking about this but right now I have no idea!
On the issue of the MIDI-C1 menus not working, this is now fixed in: https://github.com/gratrix/vcv-gratrix/commit/25b81d6a9d07aa6ab4c6b1b1a5d1e5e54b1e1d9c
There are still a lot of override warnings, but they are due to RtMidi library, and only occur when building MIDI-C1
On the mac build issue I'm arranging for someone to investigate this for me as I don't have access to a mac myself.
It's definitely a Mac problem rather than a *nix problem as I have built in Ubuntu now without any issues.
Thanks for the update
Here is what I get
[warning] Failed to load library ./plugins/gratrix/plugin.dylib: dlopen(./plugins/gratrix/plugin.dylib, 2): Symbol not found: __ZN3GTX9Octave_G14Impl6Decode1sE Referenced from: ./plugins/gratrix/plugin.dylib Expected in: flat namespace in ./plugins/gratrix/plugin.dylib
I guess that is the same as above.
I can try to comment stuff out to narrow it down.
Could you please try removing the Octave module and see if that fixes it? Just delete Octave-G1.cpp and edit Gratrix.cpp and Gratrix.hpp to remove the little bit of code to do with Octave. Thanks!
That "fixes" it!
You want me to make a release while we figure out the issue with that one module?
It's weird, Decode is right there, why is it not found?
I've used the exact same Decode class the Chord module, but because it's ultimately in a different containing scope it should be all fine. I even added a different namespace to each module to see if that would help. I think the next thing to try is to add it back in but say call it Decode2. If you don't mind givin that a go that would be great!
:) I tried that. I have been trying various things like that. I will keep trying.
aha, if i take out static constexpr
it works
Here is a mac build Gratrix.zip
Ahh static constexpr
- I'm only trying to embrace new C++ features, but these have caused me no end of trouble! I'll abandon them I think. Thank you for the Mac build, will add to my site now.
Now commented out the static constexpr
and committed. Going to close this issue :)
YAY!
OS X 10.11.6 Latest 0.5dev
Building OK with a few warnings but not showing up when Rack is run.
In file included from src/MidiToCV.cpp:5: ../../src/core/MidiIO.hpp:104:7: warning: 'MidiItem::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction(); ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ In file included from src/MidiToCV.cpp:5: ../../src/core/MidiIO.hpp:110:7: warning: 'MidiChoice::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction(); ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ In file included from src/MidiToCV.cpp:5: ../../src/core/MidiIO.hpp:119:7: warning: 'ChannelItem::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction(); ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ In file included from src/MidiToCV.cpp:5: ../../src/core/MidiIO.hpp:125:7: warning: 'ChannelChoice::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction(); ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ src/MidiToCV.cpp:251:7: warning: 'ModeItem::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction() { ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ src/MidiToCV.cpp:261:7: warning: 'ModeChoice::onAction' hides overloaded virtual function [-Woverloaded-virtual] void onAction() { ^ ../../include/widgets.hpp:153:15: note: hidden overloaded virtual function 'rack::Widget::onAction' declared here: different number of parameters (1 vs 0) virtual void onAction(EventAction &e) {} ^ 6 warnings generated.