Go Back   Cockos Incorporated Forums > REAPER Forums > MIDI Hardware, Control Surfaces, and OSC

Reply
 
Thread Tools Display Modes
Old 12-28-2019, 02:39 AM   #1
inertia
Human being with feelings
 
Join Date: Oct 2013
Posts: 801
Default Compiling Klinke source code with newer Visual Studio

I don't have VS 2010 and am trying to get the Klinke controller to compile with VS 2019 Community Edition.

Has anyone managed this?

I have included Reaper SDK, Boost and Juce libraries and followed the instructions but cannot get anything to resolve properly.

Any help would be appreciated. Preferably for 64 bit environment.
inertia is offline   Reply With Quote
Old 05-05-2020, 07:50 AM   #2
guyperrin
Human being with feelings
 
Join Date: Dec 2011
Posts: 3
Default VS2010 download

To get a copy of VS2010 go to this web page:

https://visualstudio.microsoft.com/vs/older-downloads/

and scroll down, you will see the following instruction:

"Visual Studio 2010 and Other Products:
To download any product from the following list, click the download button and log in with your Visual Studio Subscription account when prompted. If you don’t have a Visual Studio Subscription, you can create one for free by clicking on “Create a new Microsoft account” on the login page."

I believe this should get you up and running in VS2010 if you choose to do so.

I am using VS2019 myself, and tryng to compile the klinke driver.

I followed the instructions in the readme.txt file:

1) installed the EXACT versions of the Juce (1.52)and Boost (1.39.0) libraries mentioned in the klinke source instructions ("readme.txt")
2) modifying the include files paths property for the project - didn't bother setting up an environment variable.
3) as I am building a 64 bit version for 64 bit Reaper, I copied across the files located in the "JUCE-changes" directory - as instructed in the "readme.txt" file.

I have yet to successfully compile the Juce v1.52 library using VS2019 - thought I'd just jump in and see what blew up in an initial compile attempt.

The Boost library is headers only and doesn't require compilation, however, the compile is complaining alot when processing some of the Boost declarations - mainly paramter conversion issues.

I have managed to get the compile phase working in VS2019 ... with 869 lines of warnings, errors and notes. I am working through them one by one.

the most prolific error I am getting is:

"Unknown compiler version - please run the configure tests and report the results"

which is apparently being raised by a header file entry in the boost library - this line is from boost/config/compiler/visualc.hpp.

my next step is to compile the Juce 1.52 library in VS2019 ...

perhaps I will download VS2010 and try that ;-) - but only after the obligatory period of coding frustration and pain. I would prefer to have a current klinke derived project working in VS2019.

I am trying to solve a timecode display problem on my newly purchase Icon Platform Nano. Just ordered an Icon Platform D2 - hoping that it works with the current MCU OR Klinke drivers, and it may assist with my work.

regards
guy

Last edited by guyperrin; 05-05-2020 at 08:01 AM. Reason: incorrect library identified as source of compile error
guyperrin is offline   Reply With Quote
Old 05-05-2020, 07:03 PM   #3
DrFrankencopter
Human being with feelings
 
Join Date: Jan 2011
Location: Ottawa, Canada
Posts: 293
Default

I compiled it on VS2015...and 2017 IIRC. It was an older version and quite some time ago, but I wrote a bunch of details in this thread here https://forum.cockos.com/showthread.php?t=132992
Klinke used old versions of boost and juce and I recall having to make some changes inside those frameworks. Maybe someday I’ll revisit it, but what I have now works for my purposes.

Good luck!
__________________
RME TotalMixFX Actions for Reaper here: https://stash.reaper.fm/v/29339/reape...MixOSC_x64.dll
DrFrankencopter is offline   Reply With Quote
Old 05-05-2020, 10:23 PM   #4
inertia
Human being with feelings
 
Join Date: Oct 2013
Posts: 801
Default

Sorry for wasting your time but I should have updated the thread that I already solved it.

As you said, you need specific versions of JUCE to get it up and running.

The project compiles for me in VS 2019 with no issues but I don't remember now if there were any warnings.

If you still have problems send me a PM and I will help you solve them.
inertia is offline   Reply With Quote
Old 05-07-2020, 03:23 PM   #5
guyperrin
Human being with feelings
 
Join Date: Dec 2011
Posts: 3
Default

@inertia: thank you for the offer of assistance.
@DrFrankencopter: the juce and boost issues are toe-stubbers, and a deal breaker for me.

thank you both for replying and the assistance offered.
I have decided not to pursue the klinke route at the moment - I hit the my six hour limit and packed it in. I am not interested in JUCE provided functionality.
I am going to develop a csurf_IconNanoD2.dll, using the MIDI codes and sequences exposed in the source for csurf_mcu and csurf_mcu_klinke.
Neither of these two control dlls work with the Icon Nano to give me the full promised functionality (nor does CSI) so I though it best to just develop a dll specifically tailored to my device.
guyperrin is offline   Reply With Quote
Old 05-07-2020, 04:00 PM   #6
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,252
Default

Quote:
Originally Posted by guyperrin View Post
@inertia: thank you for the offer of assistance.
@DrFrankencopter: the juce and boost issues are toe-stubbers, and a deal breaker for me.

thank you both for replying and the assistance offered.
I have decided not to pursue the klinke route at the moment - I hit the my six hour limit and packed it in. I am not interested in JUCE provided functionality.
I am going to develop a csurf_IconNanoD2.dll, using the MIDI codes and sequences exposed in the source for csurf_mcu and csurf_mcu_klinke.
Neither of these two control dlls work with the Icon Nano to give me the full promised functionality (nor does CSI) so I though it best to just develop a dll specifically tailored to my device.
Yeah, I hear you re: JUCE.

I've tried it on and off over the last 15 years or so, and seems you have to buy in fully, and ride the wave by updating constantly as it evolves -- for sure pretty damn good code though -- Jules rocks !!

Agree as well that the absolute best way to exploit a given surface's capabilities is a custom dll.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 05-08-2020, 05:19 AM   #7
inertia
Human being with feelings
 
Join Date: Oct 2013
Posts: 801
Default

Quote:
Originally Posted by guyperrin View Post
@inertia: thank you for the offer of assistance.
@DrFrankencopter: the juce and boost issues are toe-stubbers, and a deal breaker for me.

thank you both for replying and the assistance offered.
I have decided not to pursue the klinke route at the moment - I hit the my six hour limit and packed it in. I am not interested in JUCE provided functionality.
I am going to develop a csurf_IconNanoD2.dll, using the MIDI codes and sequences exposed in the source for csurf_mcu and csurf_mcu_klinke.
Neither of these two control dlls work with the Icon Nano to give me the full promised functionality (nor does CSI) so I though it best to just develop a dll specifically tailored to my device.
The Csurf_mcu code in the mini SDK is an absolute mess but it's usable and does work.

There is a stripped down version of it on Github desgined to get you going with a skeleton project that i initially based my Faderport code on but in the end I went my own way with it.

The Klinke project is very large and difficult to follow if you haven't programmed an MCU before and has a ton of stuff in there you probably won't want to use.
inertia is offline   Reply With Quote
Old 05-08-2020, 08:15 AM   #8
DrFrankencopter
Human being with feelings
 
Join Date: Jan 2011
Location: Ottawa, Canada
Posts: 293
Default

Quote:
Originally Posted by inertia View Post

The Klinke project is very large and difficult to follow if you haven't programmed an MCU before and has a ton of stuff in there you probably won't want to use.
I'll echo that sentiment! It takes hours to figure out what's going on under the hood in Steffen's (Klinke's) plugin.
__________________
RME TotalMixFX Actions for Reaper here: https://stash.reaper.fm/v/29339/reape...MixOSC_x64.dll
DrFrankencopter is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 07:29 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.