Rack: Is there a way to check out stock 0.5.1

Created on 27 Dec 2017  Â·  14Comments  Â·  Source: VCVRack/Rack

OS (if applicable):
Version (or "dev" if compiling from source): source.

As far as I can tell, some things are changing on the 0.5 branch, and many plugins get compiler errors.
Is there a git tag that I can check out that corresponds to the release 0.5.1?

src/Braids.cpp:166:8: error: ‘struct rack::SampleRateConverter<1>’ has no member named ‘setRates’
    src.setRates(96000, engineGetSampleRate());
        ^
src/Tides.cpp:60:7: error: ‘void Tides::onReset()’ marked override, but does not override
  void onReset() override {
       ^
src/Tides.cpp:66:7: error: ‘void Tides::onRandomize()’ marked override, but does not override
  void onRandomize() override {
       ^
src/Warps.cpp:61:7: error: ‘void Warps::onReset()’ marked override, but does not override
  void onReset() override {
       ^
src/Warps.cpp:66:7: error: ‘void Warps::onRandomize()’ marked override, but does not override
  void onRandomize() override {
       ^
src/Rings.cpp: In member function ‘virtual void Rings::step()’:
src/Rings.cpp:158:13: error: ‘struct rack::SampleRateConverter<1>’ has no member named ‘setRates’
    inputSrc.setRates(engineGetSampleRate(), 48000);
             ^
src/Rings.cpp:226:14: error: ‘struct rack::SampleRateConverter<2>’ has no member named ‘setRates’
    outputSrc.setRates(48000, engineGetSampleRate());
              ^

All 14 comments

Yes. ...drumroll...

git checkout v0.5.0 (or v0.5.1) for each of the plugins

git checkout v0.5 for Rack.

I am having trouble with this, but I am an awful n00b.

When I cd to the Rack directory and type "git checkout v0.5", the console says "Already on 'v0.5'". When I try "git checkout v0.5.1" I get:

Note: checking out 'v0.5.1'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

git checkout -b

HEAD is now at 2c17b65... Add -lssl to Linux build

...but when I make everything according to the instructions on the main page, I get Rack which has no download manager. Isn't 0.5.1 the version which includes the download manager? Is there a way I can query the built Rack about what version it thinks it is?

I am confused about if I am getting the correct bits from github, or if it just isn't compiling right here. I am not knowledgeable/experienced enough to know which. I am on KDE neon 5.11 and all the dependencies are satisfied. Any ideas what I might be doing wrong?

You have to tell Rack what version it is when compiling, which will enable the "release" build with all the online features.

make VERSION=0.5.1

Thank you, Andrew! I just tried doing so for Rack and it built with no errors. Until I tried to run it!

cjunit@cjunit-Studio-XPS:~/Rack$ make run
LD_LIBRARY_PATH=dep/lib ./Rack
Segmentation fault
Makefile:50: recipe for target 'run' failed
make: * [run] Error 139

Perhaps I am on the right track now. When I made 0.5 it seemed to work OK.

ok - I don't get it. I threw out the entire repository and started from scratch. Checked out latest version of Rack and built it with no problem. Then tried to build Fundamental and got exactly the same error

src/Delay.cpp:78:7: error: no member named 'setRates' in 'rack::SampleRateConverter<1>'
                src.setRates(ratio * engineGetSampleRate(), engineGetSampleRate());

Dicking around with version 0.5 or 0.5.1 made no difference. There's no 'setRates' method in the SampleRateConverter class

There are two threads about this on github but none of the suggestions work for me.

This app is an amazing contribution and I'd really like to get everything built from source so I can do some interesting experiments.

What am I missing with the build?

git checkout v0.5.1

Works for me.

I'm going to try and start all over again -- I'd like to be able to just grab the very latest of everything.

The point being 'the very latest of everything' doesn't guarantee that it will build.

Uh, while I get the notion that something might break when you run it, I tend to use the model of never checking code into version control if it doesn't build.

That's what I try to do as well. But the fact remains, the master branch of the VCV repos are Andrew's personal work area, and when he's ready to release, he'll make sure they build.

That may not be how you like to work, and it isn't how I like to work, but it's how things are, and it's his sandbox. I would NOT even try to build master from VCV official projects because Andrew is breaking the APIs the third party plugins use left and right. When he's good and ready, he'll do a release, and module makers will either figure out how to conform to the new API or their projects will be dead.

Which isn't necessarily a bad thing.

My policy is that commits shouldn't break the build. If they do, it's a bug for your build environment and should be reported.

The master branch is for people who want to use bleeding edge. There are some that do and are very helpful when reporting compatibility issues with their various architectures moments after I commit them. But I wouldn't recommend using that version for actually making music, since Rack might break at any time, and users should definitely not "default" to master without wanting to explicitly sign up for it, which is why I changed the default branch to v0.5 on GitHub.

I have to ask as I'm stuck at v0.5 where "no member named 'setRates' in 'rack::SampleRateConverter" comes up.

Is there somewhere, or can anyone provide a detailed explanation about how get a local repository in sync with the latest stable rack version? git tag and git checkout tips by itself just don't do anything on my side.

Here's what I'm trying (already cloned https://github.com/VCVRack/Rack.git):

#

git fetch https://github.com/VCVRack/Rack.git
From https://github.com/VCVRack/Rack

  • branch HEAD -> FETCH_HEAD
    git tag
    v0.3.0
    v0.3.1
    v0.3.2
    v0.4.0
    v0.5.0
    v0.5.1
    git checkout v0.5.1
    Note: checking out 'v0.5.1'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

git checkout -b

HEAD is now at 2c17b65... Add -lssl to Linux build

#

But still missing the updated files.

I'm still trying to understand how github works, thanks!

See https://github.com/VCVRack/Rack/issues/561#issuecomment-354132069. git checkout v0.5 in Rack. You're on the v0.5.1 tag.

I've reorganized the branches for Rack and VCV plugins, so I'm closing this obsolete issue.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

polyclash picture polyclash  Â·  3Comments

oblivionratula picture oblivionratula  Â·  7Comments

ryan-allen picture ryan-allen  Â·  5Comments

AndrewBelt picture AndrewBelt  Â·  5Comments

LazyPike picture LazyPike  Â·  6Comments