Strum / Strums_Mental_VCV_Modules

Strum's Mental Modules for VCV Rack
BSD 3-Clause "New" or "Revised" License
63 stars 15 forks source link

Linux compilation error error: ‘gSampleRate’ was not declared in this scope #9

Closed Malifick closed 4 years ago

Malifick commented 6 years ago

g++ -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/MentalClockDivider.cpp.o src/MentalClockDivider.cpp src/MentalClockDivider.cpp:67:7: warning: ‘virtual void MentalClockDivider::step()’ can be marked override [-Wsuggest-override] void step(); ^~~~ src/MentalClockDivider.cpp: In member function ‘virtual void MentalClockDivider::step()’: src/MentalClockDivider.cpp:180:43: error: ‘gSampleRate’ was not declared in this scope lights[0] -= lights[0] / lightLambda / gSampleRate; ^~~ src/MentalClockDivider.cpp:180:43: note: suggested alternative: ‘glSampleMaski’ lights[0] -= lights[0] / lightLambda / gSampleRate; ^~~ glSampleMaski src/MentalClockDivider.cpp:198:43: error: ‘gSampleRate’ was not declared in this scope lights[1] -= lights[1] / lightLambda / gSampleRate; ^~~ src/MentalClockDivider.cpp:198:43: note: suggested alternative: ‘glSampleMaski’ lights[1] -= lights[1] / lightLambda / gSampleRate; ^~~ glSampleMaski src/MentalClockDivider.cpp:216:43: error: ‘gSampleRate’ was not declared in this scope lights[2] -= lights[2] / lightLambda / gSampleRate; ^~~ src/MentalClockDivider.cpp:216:43: note: suggested alternative: ‘glSampleMaski’ lights[2] -= lights[2] / lightLambda / gSampleRate; ^~~ glSampleMaski src/MentalClockDivider.cpp:234:43: error: ‘gSampleRate’ was not declared in this scope lights[3] -= lights[3] / lightLambda / gSampleRate; ^~~ src/MentalClockDivider.cpp:234:43: note: suggested alternative: ‘glSampleMaski’ lights[3] -= lights[3] / lightLambda / gSampleRate; ^~~ glSampleMaski src/MentalClockDivider.cpp:252:43: error: ‘gSampleRate’ was not declared in this scope lights[4] -= lights[4] / lightLambda / gSampleRate; ^~~ src/MentalClockDivider.cpp:252:43: note: suggested alternative: ‘glSampleMaski’ lights[4] -= lights[4] / lightLambda / gSampleRate; ^~~ glSampleMaski make: *** [../../compile.mk:55: build/src/MentalClockDivider.cpp.o] Error 1

Strum commented 6 years ago

yes this is a result of an API change, i'll try and sort it out in the next couple of days, i'm busy with other things now sorry..

https://github.com/VCVRack/Rack/commit/9dbadfbdc568d609dd0195f8c7ef2b6c5a90624c

explains the api change, edit it yourself it you want.

there is a linux binary release so you can use them in the meantime.

metaphorz commented 6 years ago

@Strum: Just saw this after posting. I guess I am having the same issue. Although on the binary "plugin.dylib", I did try this and it doesn't load your modules. I took the Windows folder that contains the [res] folder and plugin.dll and added plugin.dylib to this. Loading a patch that uses your modules seems not to work. I'll look into your API change info above.

Strum commented 6 years ago

I'm sorry I don't have access to a Mac so I'm relying on others to get it working on Mac.

I'm very new to git and open source development, i'll try and get a virtual machine Mac setup so i can test.

metaphorz commented 6 years ago

Thanks for your module writing! If we can help test, let us know.

I did fix the source to make it so it would compile, but VCV is not recognizing mental modules for some reason.

All I did in the source was to 1) change gSampleRate to the new method which has replaced it, and 2) fixed a boolean casting problem which was causing an error. Now, I can make, create a library, but alas, I don't know why this isn't working.

Strum commented 6 years ago

Are you trying to run it in the release version of rack or the latest dev build?

after that change it might only work in the dev build.

One of the reasons i have been putting off changing the code for the API is that it might break it for the release version and then i'll have to have everything seperate and i still haven't figured out a lot of this project management stuff being so new to git and open source development.

metaphorz commented 6 years ago

I cloned the dev build. The changes were made only on my local copy here of your plugin code. -p

On Oct 23, 2017, at 12:49 AM, Strum notifications@github.com wrote:

Are you trying to run it in the release version of rack or the latest dev build?

after that change it might only work in the dev build.

One of the reasons i have been putting off changing the code for the API is that it might break it for the release version and then i'll have to have everything seperate and i still haven't figured out a lot of this project management stuff being so new to git and open source development.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

Strum commented 6 years ago

hmmm, maybe try it with the release version then.

the current code compiles and runs under 0.4.0 but i haven't updated my rack dev version in a week or so so i don't know if it builds against the current version.

Changes are happening so fast it's hard to keep track.

Strum commented 6 years ago

I've got a few more things i have to do today but hopefully i'll get time to update my dev version and rebuild then check and change the binary releases if needs be,

I added 3 more modules yesterday and have another one in the works that i made last night, a counter for doing euclidiean rhythms.

Strum commented 6 years ago

https://github.com/Strum/Strums_Mental_VCV_Modules/issues/11