Re: [Csnd-dev] [EXTERNAL] [Csnd-dev] Daisy build info

Dave Seidel <[email protected]> Thu, 11 Sep 2025 11:45:24 -0400
Newsgroups gmane.comp.audio.csound.devel
Message-ID <CAMnrweDsWmMGcSf+aaqbkdyh9zX9cctfoA6nvW8cCtsgsYSW0A@mail.gmail.com>
Makefile and README changes

https://github.com/csound/csound/pull/2269

On Wed, Sep 10, 2025 at 3:42 PM Dave Seidel <[email protected]> wrote:

> I think the crucial thing I discovered is that Windows developers must
> use Git Bash as their shell. This may also work to build the Csound lib for
> the Daisy platform -- I'll try that and let you know.
>
> At some point I'll also try it using WSL and see if it will work -- it
> will at the very least require installation of a third-party tool that
> allows WSL to access USB ports on the host machine, but it's free and also
> documented by Microsoft.
>
> Should I make a PR for that change (to all the DaisyCsound example
> Makefiles)? I can do that tomorrow if you like.
>
> On Wed, Sep 10, 2025 at 3:20 PM Victor Lazzarini <
> [email protected]> wrote:
>
>> yes, that change works fine. I've used that for other projects.
>>
>> Is there any significant changes to the instructions for Windows? It's
>> great that we have it being built across the major host platforms.
>>
>> besst
>> Prof. Victor Lazzarini
>> Maynooth University
>> Ireland
>>
>> On 10 Sep 2025, at 18:28, Dave Seidel <[email protected]> wrote:
>>
>> 
>> Easy fix in Makefile:
>>
>> # Use Bootloader v5.4
>> # BOOT_BIN = $(shell pwd)/../dsy_bootloader_v5_4.bin
>> BOOT_BIN = ../dsy_bootloader_v5_4.bin
>>
>>
>> # Use Custom Linker Script
>> # LDSCRIPT = $(shell pwd)/../STM32H750IB_qspi_custom.lds
>> LDSCRIPT = ../STM32H750IB_qspi_custom.lds
>>
>>
>> Interesting, since the path used in the command expands to
>>
>>
>> /c/Users/daves/OneDrive/Documents/GitHub/DaisyExamples/DaisyCsoundExamples/DaisyCsoundGenerative/../STM32H750IB_qspi_custom.lds
>>
>>
>> which is valid and works when tested using ls. So I can't explain why it
>> failed, but also it seems to me that the change I made locally should work
>> on other systems as well, assuming that make is executed in the directory
>> of the example being built, per the instructions.
>>
>> BTW, I haven't tried to test the binary yet, because both Daisy Seeds I
>> have are part of Noise Engineering Eurorack modules, but when I have time I
>> will try to modify the code to work with one of these modules (which are
>> officially supported in libDaisy).
>>
>>
>>
>>
>> On Wed, Sep 10, 2025 at 11:37 AM Dave Seidel <[email protected]>
>> wrote:
>>
>>> I may try that if I can't get it to work this way, but I think I need to
>>> install something additional to get WSL to usr USB. Hoping to get to this
>>> later today.
>>>
>>> On Wed, Sep 10, 2025 at 11:19 AM Victor Lazzarini <
>>> [email protected]> wrote:
>>>
>>>> The other thing could be to use the linux subsystem.
>>>>
>>>> Prof. Victor Lazzarini
>>>> Maynooth University
>>>> Ireland
>>>>
>>>> On 10 Sep 2025, at 13:27, Dave Seidel <[email protected]> wrote:
>>>>
>>>> 
>>>> Yes, I will hopefully be able to figure it out. As I mentioned, I'm
>>>> using Git Bash as a shell (as recommended by Electro-Smith, and which
>>>> worked for rebuilding all their examples), which generally does a good job
>>>> with path translation, so maybe it will just be some small adjustment.
>>>>
>>>> On Wed, Sep 10, 2025 at 1:50 AM Victor Lazzarini <
>>>> [email protected]> wrote:
>>>>
>>>>> Maybe it's one of those Windows vs unix path issues in the toolchain.
>>>>> If you can see what the linker command is, then you might be able to
>>>>> diagnose it.
>>>>>
>>>>> Prof. Victor Lazzarini
>>>>> Maynooth University
>>>>> Ireland
>>>>>
>>>>> On 9 Sep 2025, at 20:07, Dave Seidel <[email protected]> wrote:
>>>>>
>>>>> 
>>>>> OK, I see that file now, but don't understand yet why it isn't being
>>>>> found.
>>>>>
>>>>> On Tue, Sep 9, 2025 at 2:37 PM Dave Seidel <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> OK, I have DaisyExamples and was able to run rebuild_all.sh (at a git
>>>>>> bash prompt. I then copied in the CsoundDaisyExamples folder as well as the
>>>>>> lib and include from the latest Csound build.
>>>>>>
>>>>>> Then I went into the DaisyCsoundGenerative folder and ran make. Got
>>>>>> this error:
>>>>>>
>>>>>> c:/program files (x86)/gnu arm embedded toolchain/10
>>>>>> 2020-q4-major/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld.exe:
>>>>>> cannot open linker script file
>>>>>> /c/Users/daves/OneDrive/Documents/GitHub/DaisyExamples/DaisyCsoundExamples/DaisyCsoundGenerative/../STM32H750IB_qspi_custom.lds:
>>>>>> No such file or directory
>>>>>> collect2.exe: error: ld returned 1 exit status
>>>>>>
>>>>>> Is there some other required dependency that isn't documented?
>>>>>>
>>>>>>
>>>>>> On Mon, Sep 8, 2025 at 3:11 PM Victor Lazzarini <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> yes, the binary should work regardless of the host. You'll need to
>>>>>>> place it and the headers where your crosscompiler can find it.
>>>>>>>
>>>>>>> Looking forward to seeing your projects.
>>>>>>>
>>>>>>> Prof. Victor Lazzarini
>>>>>>> Maynooth University
>>>>>>> Ireland
>>>>>>>
>>>>>>> On 8 Sep 2025, at 18:26, Dave Seidel <[email protected]> wrote:
>>>>>>>
>>>>>>> 
>>>>>>> I guess I can hopefully just use the arm-cortex-m7 build in the beta
>>>>>>> release. I still have to work out how I'm going to work with Daisy. I have
>>>>>>> three Noise Engineering Eurorack modules that are based on Daisy Seed, so I
>>>>>>> should try working with one of those first (probably Alia). I plan to start
>>>>>>> by adapting the Risset Harmonic Oscillator and the Binaural Reanimator
>>>>>>> designs that I made for the Qu-Bit Nebulae. It will probably be a while
>>>>>>> until I have anything to show/share....
>>>>>>>
>>>>>>> On Mon, Sep 8, 2025 at 12:50 PM Dave Seidel <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Looking at crtosscompile.cmake, I see
>>>>>>>>
>>>>>>>> SET(CMAKE_FIND_ROOT_PATH  /usr/arm-none-eabi /usr/lib/arm-none-eabi)
>>>>>>>>
>>>>>>>> which suggests that maybe this has never been used on Windows.
>>>>>>>>
>>>>>>>> On Mon, Sep 8, 2025 at 12:46 PM Dave Seidel <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> The toolchain does seem to be in the path, since I can execute
>>>>>>>>> "arm-none-eabi-gcc.exe -v" without errors.
>>>>>>>>>
>>>>>>>>> On Mon, Sep 8, 2025 at 12:44 PM Dave Seidel <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> OK, I now have the Daisy toolchain installed, and the
>>>>>>>>>> latest Csound develop. Following the instruction, I navigate to the build
>>>>>>>>>> dir and execute
>>>>>>>>>>
>>>>>>>>>> cmake .. -DCMAKE_INSTALL_PREFIX=../Daisy
>>>>>>>>>>> -DCUSTOM_CMAKE=../Daisy/Custom.cmake
>>>>>>>>>>> -DCMAKE_TOOLCHAIN_FILE=../Daisy/crosscompile.cmake
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> this produces an error:
>>>>>>>>>>
>>>>>>>>>> -- Check for working C compiler: C:/Program Files (x86)/Microsoft
>>>>>>>>>> Visual
>>>>>>>>>> Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe -
>>>>>>>>>> broken
>>>>>>>>>> CMake Error at C:/Program
>>>>>>>>>> Files/CMake/share/cmake-3.24/Modules/CMakeTestCCompiler.cmake:69 (message):
>>>>>>>>>>   The C compiler
>>>>>>>>>>
>>>>>>>>>>     "C:/Program Files (x86)/Microsoft Visual
>>>>>>>>>> Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe"
>>>>>>>>>>
>>>>>>>>>>   is not able to compile a simple test program.
>>>>>>>>>>
>>>>>>>>>>   It fails with the following output:
>>>>>>>>>>
>>>>>>>>>>     Change Dir:
>>>>>>>>>> C:/Users/daves/OneDrive/Documents/GitHub/csound/build/CMakeFiles/CMakeTmp
>>>>>>>>>>
>>>>>>>>>>     Run Build Command(s):C:/Program Files (x86)/Microsoft Visual
>>>>>>>>>> Studio/2019/Community/MSBuild/Current/Bin/MSBuild.exe cmTC_3462b.vcxproj
>>>>>>>>>> /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=16.0 /v:m &&
>>>>>>>>>> Microsoft (R) Build Engine version 16.11.6+a918ceb31 for .NET Framework
>>>>>>>>>>     Copyright (C) Microsoft Corporation. All rights reserved.
>>>>>>>>>>
>>>>>>>>>>       Microsoft (R) C/C++ Optimizing Compiler Version 19.29.30159
>>>>>>>>>> for x64
>>>>>>>>>>       Copyright (C) Microsoft Corporation.  All rights reserved.
>>>>>>>>>>       cl /c /Wall /WX- /diagnostics:column /O2 /D _MBCS /D
>>>>>>>>>> NO_SERIAL_OPCODES /D "CMAKE_INTDIR=\"Debug\"" /Gm- /MD /GS /fp:precise
>>>>>>>>>> /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_3462b.dir\Debug\\"
>>>>>>>>>> /Fd"C:\Users\daves\OneDrive\Documents\GitHub\csound\build\CMakeFiles\CMakeTmp\Debug\libcmTC_3462b.pdb"
>>>>>>>>>> /external:W4 /Gd /TC /errorReport:queue  -mcpu=cortex-m7 -mfpu=fpv5-d16
>>>>>>>>>> -mfloat-abi=hard -mthumb -fno-builtin -fno-exceptions -ffunction-sections
>>>>>>>>>> -fdata-sections -fomit-frame-pointer -finline-functions -Wno-attributes
>>>>>>>>>> -Wno-strict-aliasing -Wno-maybe-uninitialized -Wno-missing-attributes
>>>>>>>>>> -Wno-stringop-overflow -std=gnu99
>>>>>>>>>> C:\Users\daves\OneDrive\Documents\GitHub\csound\build\CMakeFiles\CMakeTmp\testCCompiler.c
>>>>>>>>>>     cl : command line error D8021: invalid numeric argument
>>>>>>>>>> '/Wno-attributes'
>>>>>>>>>> [C:\Users\daves\OneDrive\Documents\GitHub\csound\build\CMakeFiles\CMakeTmp\cmTC_3462b.vcxproj]
>>>>>>>>>>
>>>>>>>>>> So apparently it is passing gcc options to the MSVC compiler.
>>>>>>>>>> What do I need to do to get it to use the Daisy toolchain instead?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Mon, Sep 8, 2025 at 11:58 AM Dave Seidel <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Great, thank you!
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Sep 8, 2025 at 11:06 AM Victor Lazzarini <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> it wasn't committed, I meant!
>>>>>>>>>>>> Prof. Victor Lazzarini
>>>>>>>>>>>> Maynooth University
>>>>>>>>>>>> Ireland
>>>>>>>>>>>>
>>>>>>>>>>>> On 8 Sep 2025, at 16:05, Victor Lazzarini <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> 
>>>>>>>>>>>> Indeed, it was committed. It's in a PR now
>>>>>>>>>>>> https://github.com/csound/csound/pull/2267
>>>>>>>>>>>>
>>>>>>>>>>>> But you don't need to build it yourself, just download the
>>>>>>>>>>>> package from the latest release.
>>>>>>>>>>>> ------------------------------
>>>>>>>>>>>> *From:* Csound-developers <[email protected]> on
>>>>>>>>>>>> behalf of Dave Seidel <[email protected]>
>>>>>>>>>>>> *Sent:* Monday 8 September 2025 15:47
>>>>>>>>>>>> *To:* [email protected] <
>>>>>>>>>>>> [email protected]>
>>>>>>>>>>>> *Subject:* [EXTERNAL] [Csnd-dev] Daisy build info
>>>>>>>>>>>>
>>>>>>>>>>>> *Warning*
>>>>>>>>>>>>
>>>>>>>>>>>> This email originated from outside of Maynooth University's
>>>>>>>>>>>> Mail System. Do not reply, click links or open attachments unless you
>>>>>>>>>>>> recognise the sender and know the content is safe.
>>>>>>>>>>>> The README file in Daisy says "To build libcsound.a from
>>>>>>>>>>>> sources see BUILD.md in this directory." But there is no BUILD.md in that
>>>>>>>>>>>> directory.
>>>>>>>>>>>>
>>>>>>>>>>>>