Csound Csound-dev Csound-tekno Search About

[Csnd-dev] Running a local Windows build

Date2021-09-29 15:05
FromDave Seidel
Subject[Csnd-dev] Running a local Windows build
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-29 16:31
FromStephen Kyne
SubjectRe: [Csnd-dev] Running a local Windows build
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-29 17:49
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 01:47
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 02:19
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 13:46
FromStephen Kyne
SubjectRe: [Csnd-dev] Running a local Windows build
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 14:23
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 14:27
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 15:53
FromStephen Kyne
SubjectRe: [Csnd-dev] Running a local Windows build
Afaik it's only possible to load the one opcode directory currently (whatever the env variable is). I would like a development solution though.

It is possible to run Docker on Windows also. This could be another possibility too. We have some images for the CI already for android and emscripten. 



From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 14:27
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 15:59
FromDave Seidel
SubjectRe: [Csnd-dev] Running a local Windows build
Not proposing to load more than one opcode dir, simply to try the main binary's location first and use it if opcodes are present, otherwise use the one specified in the environment.

On Thu, Sep 30, 2021 at 10:53 AM Stephen Kyne <stevek@outlook.ie> wrote:
Afaik it's only possible to load the one opcode directory currently (whatever the env variable is). I would like a development solution though.

It is possible to run Docker on Windows also. This could be another possibility too. We have some images for the CI already for android and emscripten. 



From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 14:27
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 21:29
FromVictor Lazzarini
SubjectRe: [Csnd-dev] [EXTERNAL] Re: [Csnd-dev] Running a local Windows build
The code is there to accept semicolon (win) or colon (elsewhere)-separated list. If it's not working, then it's a bug.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 30 Sep 2021, at 15:54, Stephen Kyne <stevek@outlook.ie> wrote:



*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.

Afaik it's only possible to load the one opcode directory currently (whatever the env variable is). I would like a development solution though.

It is possible to run Docker on Windows also. This could be another possibility too. We have some images for the CI already for android and emscripten. 



From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 14:27
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 21:33
FromDave Seidel
SubjectRe: [Csnd-dev] [EXTERNAL] Re: [Csnd-dev] Running a local Windows build
Good to know, I will test it out in a bit.

On Thu, Sep 30, 2021 at 4:29 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
The code is there to accept semicolon (win) or colon (elsewhere)-separated list. If it's not working, then it's a bug.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 30 Sep 2021, at 15:54, Stephen Kyne <stevek@outlook.ie> wrote:



*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.

Afaik it's only possible to load the one opcode directory currently (whatever the env variable is). I would like a development solution though.

It is possible to run Docker on Windows also. This could be another possibility too. We have some images for the CI already for android and emscripten. 



From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 14:27
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave

Date2021-09-30 22:03
FromDave Seidel
SubjectRe: [Csnd-dev] [EXTERNAL] Re: [Csnd-dev] Running a local Windows build
Works fine. I noticed that if the list of directories starts with one that is invalid, csound exits with an error. It might be friendlier if it tried the next directory in the list. Just a thought.

On Thu, Sep 30, 2021 at 4:33 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Good to know, I will test it out in a bit.

On Thu, Sep 30, 2021 at 4:29 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
The code is there to accept semicolon (win) or colon (elsewhere)-separated list. If it's not working, then it's a bug.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 30 Sep 2021, at 15:54, Stephen Kyne <stevek@outlook.ie> wrote:



*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.

Afaik it's only possible to load the one opcode directory currently (whatever the env variable is). I would like a development solution though.

It is possible to run Docker on Windows also. This could be another possibility too. We have some images for the CI already for android and emscripten. 



From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 14:27
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Alternatively, it would be great if we could run a local build in a Docker container, but I guess that's not possible on Windows (unless I'm wrong -- all my Docker experience is on Linux hosts).

On Thu, Sep 30, 2021 at 9:23 AM Dave Seidel <dave.seidel@gmail.com> wrote:
Maybe as simple as having the internal logic check the "current directory" (u.e., location of the main binary) before looking in other locations for the opcodes. And maybe a command-line switch to enable/disable that behavior.

On Thu, Sep 30, 2021 at 8:46 AM Stephen Kyne <stevek@outlook.ie> wrote:
This is a problem I ran into before as well. It might be nice to automatically pick up opcodes from the local folder in debug builds maybe. That might be something we can add.

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Thursday 30 September 2021 02:19
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: Re: [Csnd-dev] Running a local Windows build
 
Sorry, it's just that OPCODE6DIR had been set by the previous installation. If I override that to point to the local build it works fine.

On Wed, Sep 29, 2021 at 8:47 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Looks like it's picking up ipmidi.dll from it's installed location, rather than the local build: C:\Program Files\Csound6_x64\plugins64\ipmidi.dll

On Wed, Sep 29, 2021 at 12:49 PM Dave Seidel <dave.seidel@gmail.com> wrote:
Thanks, Stephen. It will be great to be able to install using cmake.

In the meantime, I did a fresh debug build in VC, started it up using the debugger, and it died with this:

Exception thrown at 0x00007FF88EAE1308 (ipmidi.dll) in csound.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.

There are no symbols for ipmidi.dll.


On Wed, Sep 29, 2021 at 11:31 AM Stephen Kyne <stevek@outlook.ie> wrote:
Hi Dave,

The csound.exe binary should work in the output directory so that is strange. Is it silently crashing? It might be worth trying to launch/debug csound_bin in Visual Studio and see what happens. You should get more information via the IDE. 

FYI you can do cmake installs which should work cross platform (on Linux it would be the same as 'make install'). Ideally our project would support building and installing with just

// generate project, build it and install it
cmake -B buildDir -S . -DCMAKE_BUILD_TYPE=Release
cmake --build buildDir 
cmake --install 

This isn't fully working for Windows yet though. I'm trying to improve the cmake on Windows experience lately to help streamline the CI and in general.

Stephen

From: Csound-developers <CSOUND-DEV@LISTSERV.HEANET.IE> on behalf of Dave Seidel <dave.seidel@GMAIL.COM>
Sent: Wednesday 29 September 2021 15:05
To: CSOUND-DEV@LISTSERV.HEANET.IE <CSOUND-DEV@LISTSERV.HEANET.IE>
Subject: [Csnd-dev] Running a local Windows build
 
Now that I have the new build working (and it's working nicely), I'd like to understand how to run the resulting binary. I've been building and running Csound on Linux (including Raspberry Pi) for years, and am quite comfortable with that. But of course I can't just do "sudo make install" on Windows -- as far as I know. I've never built the Win installer and don't know how to do so.

When I execute csound.exe in my build/Release directory, I get no console output at all, regardless of which command line options I use (e.g. -v -h). I'm guessing that this is because the binary is not looking in the current directory for the dependent DLLs. So what is the procedure to run and/or install a local Win build?

- Dave