I have been away from VCV Rack for some time and today thought I might see if I could get back into it.
I have a few modules made a few years ago that i would like to update to work with v1 before trying v2, so I am wondering if anyone can help…this is probably very simple.
I am getting this error -
Makefile:22: Rack-SDK/plugin.mk: No such file or directory
make: *** No rule to make target `Rack-SDK/plugin.mk'. Stop.
Here is the directory structure:
rackplugs
Rack-SDK
dep
include
MyModule
include
all of the other files, including helper.py, plugin.mk, etc.
The SDK looks to have changed considerably since 2018 (I think) and I am getting the error above after taking the following steps -
In the folder that holds the SDK folder, create the path…
export RACK_DIR=Rack-SDK
Create a new module…
cd Rack-SDK
python3 helper.py createplugin MyModule
Try to build…
cd MyModule
make
Also, I did try v2 and that worked in some ways more easily, but now there are compile errors like this one…I am looking for the reason now, but it is not clear why cmath is not found. I did try upgrading everything (brew upgrade) that I think is likely to be involved.
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cmath:649:25: error:
no template named 'numeric_limits'
I don’t know ether this will help or not but with both the V1 and V2 SDKs I add a folder called ‘plugins’ in there and then add the plugin sources in the plugins folder for building. The Rack Directory in the makefiles is usually
To create a new plugin, ran this and followed instructions
cd Rack-SDK
python3 helper.py createplugin MyModule
This created a folder called MyModule with res and *src folders as well as .gitignore, Makefile, and plugin.json files as expected.
Then I ran make in the MyModule directory. The first error looks as below, the rest that are visible look similar.
In file included from src/plugin.cpp:1:
In file included from src/plugin.hpp:2:
In file included from /Users/me/Documents/SourceControl/rackplugs/Rack-SDK/include/rack.hpp:6:
In file included from /Users/me/Documents/SourceControl/rackplugs/Rack-SDK/include/common.hpp:10:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cmath:317:9: error:
no member named 'signbit' in the global namespace
using ::signbit;
So, it seems that this is likely due to Xcode changing over time and it not providing cmath…
I looked in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 and found that cmath does not exist and that math.h does.
Can anyone offer any advice on this? So far my Google searches have not been successful. This seems to be a challenge for many people over the years but there is no clear answer for macOS 10.15.7 + xcode 12.1.
@maw As you’re using Homebrew maybe try to force it to install the latest command line tools for Xcode just in case they’ve got out of whack somewhere?
xcode-select --install
brew upgrade
Also, and this may be me, I avoided using $HOME in the path and put the full path to the Rack-SDK folder.
Hmm. I just tried reinstalling the command line tools as you suggested and I am getting the same problem with cmath…
So, off to delete it again. I wish there was a definitive guide…I don’t know yet, but I have a feeling not having them installed will cause problems with other projects (and Xcode will ask me to install them every time I open it).
Thank you both again!
UPDATE: I ended up killing off everything in /usr/local and reinstalling home-brew and dependencies. In all, it took about 15 minutes and resolved all of the problems I was having.
I had a similar problem, my culprit was a bad install. Turns out installing the build environment or the dependencies won’t work properly unless you manually install libtool separately first and then completely restart with building Rack.