在Linux上简单几步安装REAPER扩展sws

Building the SWS Extension in Linux.

Posted by Tee on July 20,2018

从REAPER 5.93开始,REAPER官方公开把Linux Native添加在了官方网站,并在压缩包里提供了方便新人的安装脚本。

因为之前编译sws失败,在REAPER 5.93版本之前,我一直使用的是其他REAPER用户编译过,发放在官方资料库里的sws。

在官网公开发布新版出来以后,我尝试重新编译了sws,惊喜的我发现编译成功了。

这里把步骤总结,分享给大家。在Linux安装REAPER扩展sws其实很简单。

下载源码

需要软件git,如果没有安装需提前安装。

另外需要安装lib-gtk3.0-dev和php(不同发行版软件包名字可能会不一样)

打开命令行,随便进入一个目录。如我,进入的是~/tmp

git clone https://github.com/justinfrankel/WDL.git

git clone https://github.com/reaper-oss/sws.git

接着进入sws这个目录,切换next分支。

cd sws

git checkout next

生成reaper_plugin_functions.h

启动REAPER,打开action list,运行"[developer] Write C++ API functions header"命令,如下图。

Generate the API header file reaper_plugin_functions.h from REAPER

把生成的文件保存到刚刚的sws文件夹里

编辑reascript_python.pl

进入目录sws,编辑reascript_python.pl,在注释之后添加这一句,并保存。

BEGIN { unshift @INC, "."; }

开始编译

在命令行进入刚刚的sws目录,输入命令"make"即开始编译。

等待一段时间,没有错误提示即成功。

把生成的文件放到正确的地方

编译成功的话,会有以下几个文件:

  • reaper_sws64.so
  • sws_python.py
  • sws_python32.py
  • sws_python64.py

reaper_sws64.so正是本文所说的sws本体,*.py文件是reascript所需要的。

以下是sws扩展文件所需要放置的目录,因为每个人可能安装设置的配置文件目录,REAPER本体目录都不一样,以下目录作为你的参考:

  • 把reaper_sws64.so放在~/.REAPER/UserPlugins里 或 放在/usr/lib/REAPER/Plugins里
  • 把sws_python*.py放在/usr/lib/REAPER/Plugins里

不一定是复制,用软连接的方式(ln -s)也是没问题的。

总结与参考

至此,一切以完成,重新打开REAPER便可找到sws的扩展,reascript在python语言下也能正常import sws_python。

如果你不想编译REAPER扩展sws,可以在https://stash.reaper.fm/v/33975/reaper_sws_linux.tar.xz下载。

我已经把这几个文件都打包上传了,直接用吧。当我上面的没说hhh

参考资料:

https://github.com/reaper-oss/sws/wiki/Building-the-SWS-Extension

https://github.com/reaper-oss/sws/issues/970