[chuck-users] ChucK FLOSS - MIDI reference

Ben Sandvik bpsandvik at gmail.com
Sun May 27 15:06:25 EDT 2018


Jack's note that miniAudicle is only looking in C:\Program
Files\ChucK\chugins\ ended up being the key here.  I now have some o the
chugins installed and working :)  I had the 10/21/2015 .chug versions
floating around my computer from 1.3.5.2, I made sure the 02/05/18 versions
were in C:\Program Files\ChucK\chugins\ ( and the only versions in there,
get the old ones out)

The following are not automatically installed with 1.4.0.0:
Binaural, Faust, Ladspa, NHHall, Random, Wavetable

Below are the steps I took to get Binaural, Wavetable, and Random to
compile and install.  Have not attempted Faust or Ladspa yet

I could not get NHHall working with this method.  NHHall does not come with
a VCXPROJ file so I used the VCXPROJ file from another chugin as a template
and made my own for NHHall.  Using the steps below I was able to
sucessfully build a .CHUG file for NHHall, but when trying to load the
chugins in miniAudicle I get an error:
[chuck]:(3:SEVERE):  |  |  | error loading chugin 'NHHall.chug', skipping
[chuck]:(3:SEVERE):  |  |  | error from chuck_dl: 'no version function
found in dll 'C:\Program Files\ChucK\chugins/NHHall.chug''
Not sure if this is a problem with the NHHall files or user error on my
part.
Anyone have NHHall working on windows 10?

Thanks
Ben

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


After many days on stack overflow, trying to set up my laptop to use the VS
2010 build tools in the year 2018, I gave up and just tried stuff until I
came up with this brute force method of installing the rest of the chugins

Step 1:
git clone https://github.com/ccrma/chugins.git
the git repo will be placed in C:\Users\<name>\chugins
Open the makefile in C:\Users\<name>\chugins, the first lines are a list of
chugins in the order they will be built/installed in.  Put the chugin you
want to install at the beginning, e.g. CHUGINS= Wavetable etc. ( This is
just so that you don't have to go through the steps below for each of the
chugins that are already installed).


Step 2a:
You might get the following error when running $ make win32:
msbuild.exe /p:Configuration=Release
process_begin: CreateProcess(NULL, msbuild.exe /p:Configuration=Release,
...) failed.
make (e=2): The system cannot find the file specified.

You need to find the directory containing msbuild.exe and add it the
MINGW64 path, this worked for me:

$ export PATH=$PATH:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319"

Step 2b:
Open the VCXPROJ file in C:\Users\<name>\chugins\Wavetable, note that the
first line indicates ToolsVersion="15.0"
make sure you have the 15.0 buils tools for VS installed and that MINGW64
can access the folder:

$ export PATH=$PATH:"C:\Program Files (x86)\Microsoft Visual
Studio\2017\Community\MSBuild\15.0\Bin"

Step 3:
$ cd chugins
$ make win32

Although I had all the build tools, compilers, and SDKs for the v100
platform toolset,  chugins would not compile and I couldn't get past the
following error:

error MSB8020: The build tools for Visual Studio 2010 (Platform Toolset =
'v100') cannot be found.

I noticed on the github history that there was a fix on 01/17/18 that
changed the VCXPROJ file for each chugin from
<PlatformToolset>v141</PlatformToolset> to
<PlatformToolset>v100</PlatformToolset>.
So as an experiment I changed this back to
<PlatformToolset>v141</PlatformToolset> in the VCXPROJ file for the chugin
(there are a few different lines of this in the file)
NB: v141 did not work for each of them, for example Binaural needed v140 to
compile

Step 4:
run make win32 again.  Should get a 'build succeeded" in the log

Step 5:
make install. get the following error:
$ make install
CHUCK_STRICT=1 make -C Wavetabler/ install
make[1]: Entering directory 'C:/Users/Ben/chugins/Wavetable'
gcc -O3 -Werror -c -o Wavetable.o Wavetable.cpp
process_begin: CreateProcess(NULL, gcc -O3 -Werror -c -o Wavetable.o
Wavetable.cpp, ...) failed.
make (e=2): The system cannot find the file specified.

Step 6:
move the contents of C:/Users/<name>/Wavetable/Release to
C:/Users/<name>/Wavetable/ and change the file name of Wavetable.obj to
Wavetable.o

Step 7:
run make install again. then move the Wavetable .CHUG file from
C:/Users/<name>/chugins/Wavetable to C:\Program Files\ChucK\chugins
Double check that C:\Program Files\ChucK\chugins is a directory for chugins
in miniAudicle and re-start miniAudicle.  The chugin should be working now,
at least avoiding the 'undefined type' error in miniAudicle.

<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=icon>
Virus-free.
www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail&utm_term=link>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

On Wed, May 23, 2018 at 8:49 PM, Spencer Salazar <spencer.salazar at gmail.com>
wrote:

> The main difference between the two is that when I was looking to use
> MidiRW, it didnt/doesn't actually work and is just a shell around an
> unimplemented interface, so MidiFileIn was added, which mostly just maps to
> STK's implementation.
>
> Spencer
>
>
> On Wed, May 23, 2018 at 9:54 AM, Juan Reyes <juanigrp at gmail.com> wrote:
>
>> Hi Michael, Mario,
>>
>> Thanks a lot for the links. Need to try these classes, they look cleaner.
>>
>> MidiFileIn inherits from STK also (sorry Gary but thanks!).
>>
>> Not so sure about MidiRW either. Looks like it has methods to open,
>> close, read and write MIDI files. Seems to me that it is also used in
>> conjunction with MidiMsg. I guess its usage might be like opening and
>> manipulating audio files.
>>
>>   Cheers,
>>
>>   -- Juan
>>
>>
>>
>>
>>> LiCK contains NoteOn/NoteOff/ControlChangeMidiMsg classes that
>>> extend MidiMsg and hide some of the details.
>>>
>>> https://github.com/heuermh/lick/tree/master/lick/midi
>>>
>>> Here's an example of how they might be used
>>>
>>> https://github.com/heuermh/lick/blob/master/lick/midi/Animoo
>>> gMidi.ck#L104
>>>
>>> _______________________________________________
>> chuck-users mailing list
>> chuck-users at lists.cs.princeton.edu
>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>>
>>
>>
>
>
> --
> Spencer Salazar, PhD
> Special Faculty
> Music Technology: Interaction, Intelligence, and Design
> California Institute of the Arts
>
> ssalazar at calarts.edu | +1 831.277.4654
> https://spencersalazar.com
>
>
> _______________________________________________
> chuck-users mailing list
> chuck-users at lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20180527/bfb2a3a4/attachment.html>


More information about the chuck-users mailing list