I can build for Linux too whenever the code goes online/public, would love to test it.
Okay, Meander is public on GitHub at https://github.com/knchaffin/Meander
I build on Win10. It will be interesting to see if it builds on MacOS and linux.
This is still a work in progress and is not ready for prime time yet. I need to write a manual page soon.
As a reminder, Meander for Rack is a sequencer, not a DSP audio module.
Linux:
src/Meander.cpp:331:16: error: declaration of âHarmonyParms MeanderState::HarmonyParmsâ [-fpermissive]
HarmonyParms HarmonyParms;
^~~~~~~~~~~~
src/Meander.cpp:252:8: error: changes meaning of âHarmonyParmsâ from âstruct HarmonyParmsâ [-fpermissive]
struct HarmonyParms
^~~~~~~~~~~~
src/Meander.cpp:332:14: error: declaration of âMelodyParms MeanderState::MelodyParmsâ [-fpermissive]
MelodyParms MelodyParms;
^~~~~~~~~~~
src/Meander.cpp:274:8: error: changes meaning of âMelodyParmsâ from âstruct MelodyParmsâ [-fpermissive]
struct MelodyParms
^~~~~~~~~~~
src/Meander.cpp:333:12: error: declaration of âBassParms MeanderState::BassParmsâ [-fpermissive]
BassParms BassParms;
^~~~~~~~~
src/Meander.cpp:319:8: error: changes meaning of âBassParmsâ from âstruct BassParmsâ [-fpermissive]
struct BassParms
^~~~~~~~~
src/Meander.cpp:334:11: error: declaration of âArpParms MeanderState::ArpParmsâ [-fpermissive]
ArpParms ArpParms;
^~~~~~~~
src/Meander.cpp:302:8: error: changes meaning of âArpParmsâ from âstruct ArpParmsâ [-fpermissive]
struct ArpParms
^~~~~~~~
Builds and loads on mac no problem
A few warnings but they all look totally innocuous to me.
src/Meander.cpp:25:9: warning: 'DEBUG' macro redefined [-Wmacro-redefined]
#define DEBUG(format, ...) // DEBUG(format, ...)
^
/Users/paul/dev/VCVRack/V1.0//Source/Rack/include/logger.hpp:12:9: note: previous definition is here
#define DEBUG(format, ...) rack::logger::log(rack::logger::DEBUG_LEVEL, __FILE__, __LINE__, format, ##__VA_ARGS__)
^
src/Meander.cpp:1953:10: warning: unused variable 'current_cpu_time_double' [-Wunused-variable]
double current_cpu_time_double= (double)(current_cpu_t) / (double)CLOCKS_PER_SEC;
^
src/Meander.cpp:2788:10: warning: unused variable 'systime' [-Wunused-variable]
time_t systime=time(NULL);
^
In file included from src/Meander.cpp:15:
src/Common-Noise.hpp:567:13: warning: unused function 'normalize3' [-Wunused-function]
static void normalize3(double v[3])
^
4 warnings generated.
Wow, you are fast! Whew, this is a relief that it works on MacOS. I get those same warnings on my build. I need to fix them anyway. The DEBUG redefinition is what I use to cause all DEBUG() calls to be âcommented outâ and not compile.
Thanks for testing:)
Looks like at least one of my fonts is not working.
How many fonts does one need?
I got it to trigger OSCes and stuff though.
[3.792 warn src/window.cpp:36] Failed to load font /Users/paul/Documents/Rack/plugins-v1/PS-PurrSoftware/res/fonts/DejaVuSansMono.ttf
shows up in my log. And that font is indeed not in res.
Yeah looks like it is just missing
paul:~/dev/VCVRack/plugin-source/Meander$ grep -r Deja src
src/Meander.cpp: textfont = APP->window->loadFont(asset::plugin(pluginInstance, "res/fonts/DejaVuSansMono.ttf"));
paul:~/dev/VCVRack/plugin-source/Meander$ ls -al res/
total 3416
drwxr-xr-x+ 11 paul staff 352 Dec 8 12:03 .
drwxr-xr-x+ 13 paul staff 416 Dec 8 12:03 ..
-rw-r--r--+ 1 paul staff 37832 Dec 8 12:03 EurostileBold.ttf
-rw-r--r--+ 1 paul staff 830004 Dec 8 12:03 LEDCalculator.ttf
-rw-r--r--+ 1 paul staff 595082 Dec 8 12:03 Meander.svg
-rw-r--r--+ 1 paul staff 71288 Dec 8 12:03 MusiSync2.ttf
-rw-r--r--+ 1 paul staff 44988 Dec 8 12:03 MusiSync3.ttf
-rw-r--r--+ 1 paul staff 53380 Dec 8 12:03 Musisync-KVLZ.ttf
-rw-r--r--+ 1 paul staff 77604 Dec 8 12:03 Musisync-qYy6.ttf
-rw-r--r--+ 1 paul staff 16624 Dec 8 12:03 Segment7Standard.ttf
-rw-r--r--+ 1 paul staff 2489 Dec 8 12:03 musisync-guide-06dd.htm
I just now committed /res/DejaVuSansMono.ttf to the repository. Sorry about that.
8 Some will be removed eventually.
I never noticed that I had the struct name and the object name the same. I guess your linux compile does a more stringent check than my Windows compile.
I will fix this. Should be an easy fix.
Thanks
Ok, let me know when done & Iâll rebuild.
I just now committed the fix to /src/Meander.cpp
Now builds fine.
Cool. You referred to it in res/fonts and loaded it in res/ - I just fired over a teensy pull request which fixes that and adds a gitignore. Feel free to merge it or just close it if you want to push this in your regular course of work.
Oh the other tiny thing is you probably want to change your plugin.json to say
"license": "GPL-3.0-or-later",
since that would match the license. Youâll have to do this before you submit to the plugin manager.
probably want at least the tag âPolyphonicâ for the module tags also.
From poking around quickly everything else looks fine. Great candidate for an azure build also! Let me know if you need any help, although Iâm offline for rest of the afternoon.
Thanks. I fixed the problem by putting alll fonts in the /res folder and properly referencing the path in Meander.cpp .
Done. Thanks!
Great! Thanks.