SDK development setup questions for Windows 10

This forum is for developers of Rack Extensions to discuss the RE SDK, share code, and offer tips to other developers.
Post Reply
wendallsan
Posts: 45
Joined: 10 Dec 2017

07 Jun 2021

Hi all,

I'm not able to follow the "Get Started" directions at:

https://developer.reasonstudios.com/lea ... et-started

Following these directions, I'm not able to get the VerySimpleSampler Example to build. I'm running Windows 10 and have Microsoft Visual Studio 2019 with C++ support installed, Python 3.7.3, and Reason Recon installed. Following the directions provided at the link above, when I navigate to my local SDK files into the VerySimpleSampler directory and run the command `python build45.py local45 Testing`, I get an error. Can you provide any assistance to get me to the point where I can build this example and move on to other tutorials? Thanks for your time. I've included the full output of my attempt below, and let me know if I can answer any questions to move this forward.

Code: Select all

PS C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Examples\VerySimpleSampler> python build45.py local45 Testing
Building JukeboxExports.cpp
Building SampleSound.cpp
Building VerySimpleSampler.cpp
Building Voice.cpp
    build45DLL(rackExtensionName, intermediate45File, builtLibraryName, intermediateDir, platform, configuration)
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 676, in build45DLL                                                                                                 doBuild
    runCommand(commandLine)
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 371, in rocal45unCommand                                                                                                 ration)
    subprocess.check_call(commandLine)                                                                    uild45DLL
  File "C:\Users\wendallsan\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 342, in check_call                                                                                                      unCommand
    retcode = call(*popenargs, **kwargs)
  File "C:\Users\wendallsan\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 323, in call  call
    with Popen(*popenargs, **kwargs) as p:
  File "C:\Users\wendallsan\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 775, in __init__
    restore_signals, start_new_session)                                                                   __
  File "C:\Users\wendallsan\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 1178, in _execute_child                                                                                                 ute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

wendallsan
Posts: 45
Joined: 10 Dec 2017

08 Jun 2021

Hi all, another day, another attempt at this using a different machine in case I had something wonky installed on the other system.

On a new laptop that has no other development software already installed on it this time around, I've installed Reason Recon, Python 3.9.5, and Visual Studio 2019 with Visual C++ 2019. I fired up VS2019 and found the "Visual Studio command prompt" (in case it is different than running commands from cmd or Powershell), navigated to the VerySimpleSampler directory in the SDK and ran the command `python .\build45.py local45 Testing`. The process seemed to get one step further than what I reported yesterday on the other system: Voice.cpp seems to build successfully now, but the very next item VoicePool.cpp is throwing errors. Here is another round of output for folks in case something stands out. Again, any help is greatly appreciated in getting me past the 'get the environment to work' stage of development.

Code: Select all

PS C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Examples\VerySimpleSampler> python .\build45.py local45 Testing
Building JukeboxExports.cpp
Building SampleSound.cpp
Building VerySimpleSampler.cpp
Building Voice.cpp
Building VoicePool.cpp
   Creating library Intermediate-llvm\Testing\64\dependencytest.lib and object Intermediate-llvm\Testing\64\dependencytest.exp
   Creating library Intermediate-llvm\Testing\64\VerySimpleSampler64.lib and object Intermediate-llvm\Testing\64\VerySimpleSampler64.exp
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol pow referenced in function _Z23FreqFactorFromSemiNotesd
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol log referenced in function log2
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol powf referenced in function exp10f
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol logf referenced in function log2f
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol cos referenced in function ccos
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol sin referenced in function ccos
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol exp referenced in function _cchsh
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol cosf referenced in function ccosf
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol sinf referenced in function ccosf
VerySimpleSampler_static_libraryInst.obj : error LNK2019: unresolved external symbol expf referenced in function _cchshf
RackExtWrapperLib.lib(WinRuntimeInit.obj) : error LNK2019: unresolved external symbol __security_init_cookie referenced in function DSPMain
RackExtWrapperLib.lib(WinRuntimeInit.obj) : error LNK2019: unresolved external symbol __imp_DisableThreadLibraryCalls referenced in function DSPMain
RackExtWrapperLib.lib(WinRuntimeInit.obj) : error LNK2019: unresolved external symbol _CRT_INIT referenced in function DSPMain
clang_rt.builtins-x86_64.lib(muldc3.obj) : error LNK2019: unresolved external symbol _finite referenced in function __muldc3
clang_rt.builtins-x86_64.lib(mulsc3.obj) : error LNK2001: unresolved external symbol _finite
clang_rt.builtins-x86_64.lib(muldc3.obj) : error LNK2019: unresolved external symbol _isnan referenced in function __muldc3
clang_rt.builtins-x86_64.lib(mulsc3.obj) : error LNK2001: unresolved external symbol _isnan
C:\Program Files (x86)\Windows Kits\10\lib\10.0.19041.0\um\x86\kernel32.lib : warning LNK4272: library machine type 'x86' conflicts with target machine type 'x64'
C:\Program Files (x86)\Windows Kits\10\lib\10.0.19041.0\um\x86\uuid.lib : warning LNK4272: library machine type 'x86' conflicts with target machine type 'x64'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\lib\x86\LIBCMT.lib : warning LNK4272: library machine type 'x86' conflicts with target machine type 'x64'
Intermediate-llvm\Testing\64\VerySimpleSampler64.dll : fatal error LNK1120: 15 unresolved externals
Build ERROR!
Traceback (most recent call last):
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 1205, in doBuild
    local45(re_name, platform, configuration, OTHER_COMPILER_FLAGS, productID)
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 821, in local45
    build45DLL(rackExtensionName, intermediate45File, builtLibraryName, intermediateDir, platform, configuration)
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 713, in build45DLL
    runCommand(commandLine)
  File "C:\Users\Public\Documents\ReasonStudios\JukeboxSDK_4.2.0\SDK\Tools\Build\build.py", line 371, in runCommand
    subprocess.check_call(commandLine)
  File "C:\Users\danst\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 373, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['link', '/NOLOGO', '/DLL', '/ENTRY:DSPMain', '/LIBPATH:..\\..\\Tools\\Libs\\VisualStudio\\x64\\Testing', '/INCREMENTAL:NO', '/DEBUG', '@..\\..\\Tools\\Libs\\RackExtensionWrapper\\x64\\WinDLLExports.txt', '/NODEFAULTLIB:libucrtd', '/NODEFAULTLIB:ucrt', '/NODEFAULTLIB:ucrtd', '/NODEFAULTLIB:libvcruntimed', '/NODEFAULTLIB:vcruntime', '/NODEFAULTLIB:vcruntimed', '/NODEFAULTLIB:libcmtd', '/NODEFAULTLIB:msvcrt', '/NODEFAULTLIB:msvcrtd', '/NODEFAULTLIB:msvcmrt', '/NODEFAULTLIB:msvcmrtd', '/NODEFAULTLIB:msvcurt', '/NODEFAULTLIB:msvcurtd', '/NODEFAULTLIB:libcpmt', '/NODEFAULTLIB:msvcprt', '/NODEFAULTLIB:libcpmtd', '/NODEFAULTLIB:msvcprtd', 'kernel32.lib', '/OUT:Intermediate-llvm\\Testing\\64\\VerySimpleSampler64.dll', 'Intermediate-llvm\\Testing\\64\\VerySimpleSampler_static_libraryInst.obj', '..\\..\\Tools\\Libs\\RackExtensionWrapper\\x64\\Deployment\\RackExtWrapperLib.lib', '..\\..\\Tools\\LLVM\\Win\\lib\\clang_rt.builtins-x86_64.lib', 'Intermediate-llvm\\Testing\\64\\wrapperlibc.obj']' returned non-zero exit status 1120.

avasopht
Competition Winner
Posts: 3946
Joined: 16 Jan 2015

08 Jun 2021

Try running from the x64 native tools command prompt. Just hit Windows then type native and it should appear as an option.

wendallsan
Posts: 45
Joined: 10 Dec 2017

08 Jun 2021

avasopht wrote:
08 Jun 2021
Try running from the x64 native tools command prompt. Just hit Windows then type native and it should appear as an option.
That worked! Many thanks, I can move forward now with actually trying to do something, I'm sure I'll have more questions soon.

User avatar
pongasoft
RE Developer
Posts: 478
Joined: 21 Apr 2016
Location: Las Vegas
Contact:

09 Jun 2021

I just wanted to point out re-quickstart in case you are not aware of it: https://pongasoft.com/re-quickstart/index.html

Once you generate a project there is a README with all the steps.

Yan

wendallsan
Posts: 45
Joined: 10 Dec 2017

13 Jun 2021

Hi Yan, thanks I have found your templates and they do look helpful. I'm hoping to start using them once I've sussed out the basics and get my first very simple idea or two off the ground. Thanks for contributing to the betterment of us other devs!

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 0 guests