Cabbage Logo
Back to Cabbage Site

Some problems on Windows

If Cabbage was installed using the package Cabbage32Setup.exe, whenever I try to create an envelope in my synths there’s a crash. If I use the Canonical version instead, it works.

The problem seems to be the same Rory described here: http://csound.1045644.n5.nabble.com/CSOUND-DEV-problems-with-Csound-on-Windows-td5744311.html. I couldn’t debug much but Windows reports suggest that the problem was in the ntdll library. Has anyone found a solution to this?

Concerning the Canonical version, I’ve installed that one in two notebooks and a virtual machine. One of the notebooks, brand new (Windows 10) said it couldn’t find libflac.dll. The problem was solved by downloading and placing the file inside the Cabbage folder located under Program Files.

All of them complained about a missing entry point in libstdc+±6.dll. So I had to take that file from the Csound6/bin folder and then place it inside the Cabbage folder. Have you ever encountered this kind of error? Should we do something about it?

Cheers.

I’m going to prepare a new windows build in the next days that I will link against the very latest canonical version of Csound. This should fix all these issues. Note that it will be 64bit. If people really want a 32 bit version I can prepare one, but the 64 but version is the one I’ll be recommending.

That could be a problem for us. We are a developing country with an OLPC program. The netbooks I’ve seen have a 32-bit intel atom cpu. If you stop releasing the 32-bit version I’ll have to dig into the Windows Nsis installers and start creating them myself.

Do you know what was causing the netdll.dll error by any chance?

Cheers.

I’m pretty sure the problems relate to conflicting dlls. This is why i plan to ship Cabbage on Windows with the current canonical Csound in the future. The last time I had my hands on an OLPC notebook it was not running windows, but its own Sugar OS. Has this changed? I can of course create 32bit builds. Btw, are you now using msys2 for building Csound on Windows?

The missing libflac in a brand new computer would suggest that libflac is a Cabbage or Csound dependency, am I wrong? Shouldn’t that library be included in one of those packages by default?

The missing entry point in libstdc+±6 seems to happen because Cabbage is picking that library from Windows/System32 -or whatever name that folder has now- or from some other software (i.e. not from Csound/bin). Is it wrong to assume that this problem is still going to happen no matter against what Csound you linked Cabbage to? That is, of course, unless there’s a match in the .dll versions.

I’m sorry I wasn’t clear enough, our program in Argentina is actually a native one (“Conectar Igualdad”). But the idea is the same: One laptop per child. We have a lot of different brands selling us the netbooks. They ship with Windows (terrible idea for a State funded program) and Linux Mint or Ubuntu. But unfortunately no one ever boots Linux, so I have to make Cabbage work in Windows 32-bit.

I am not building Csound myself in Windows. I built it once using msys and I hope I don’t have to do that again! I’m just installing Csound 6.07_beta2 that is in SourceForge and the Canonical version of Cabbage in those netbooks.

Ah Ok. Makes sense. The libflac problem is a libsndfile issue as far as I am aware. Not that libsndfile has any issues; it’s solid as a rock. It’s the packaging of different applications on Windows that leads to the problem. Anyhow, rather than spend time investigating, it’s best we concentrate on the new windows package which statically links to these libraries. So no more dll madness. Csound on windows is only going to be released as 64bit from this release onward. However, I’ve been able to to use msys2 to build 32 bit binaries as well. MSYS was a nightmare. MSYS2 is great. It has a package manager. In fact it uses pacman from Arch Linux. We can definitely get it going on these low powered machines. It will be great for the Cabbage project!

I can’t believe they are stopping the release of 32-bit versions for Windows. There are a lot of old notebooks that were upgraded from Windows 7 all the way to Windows 10 and so they still run a 32-bit OS.

If I’m understanding you correctly there will be no more “Cabbage only” release for Windows? Or is it the other way around?

It would be great if Cabbage was already included in the Csound installer as I believe it was before. Right now my problem is I want to install Cabbage on 32-bit Windows and also be able to run CsoundQt (which only comes with the Csound installer).

By the way, I’ve recently installed the “Cabbage only” package in a notebook with Windows 10 and had to rename libfltk.dll in the Csound6/bin folder to circumvent some annoying dialogs similar to the libstdc+±6 ones.

Also, I was playing with the instruments @Codesound published some minutes ago and Cabbage crashed saying something about ntdll.dll. Contrary to what happened before, this was the “Cabbage only” package.

I’ll download MSYS2 as soon as my internet connection is restored to a normal state.

Cheers.

I don’t think that Mike Gogins, who currently prepares the Windows installers will be maintaining a 32-bit version alongside the 64-bit one. Packaging on Windows has always been a pain. I can’t say I blame him for making a choice to support one or the other. But I think we should ask on the Csound list, he may well continue to prepare 32-bit builds if there is enough interest. I can’t say for sure.

I will continue to prepare packages that ship with Csound for those who want an all in one installer, and a package that doesn’t ship with Csound, for those who already have Csound installed.

The issue I had with Cabbage being included with Csound was that it would inevitably become an old version of Cabbage long before the next Csound release. There are about 3 releases each year of Csound, but as you’ve seen, I’m constantly updating and sharing new builds of Cabbage.

When you say Cabbage only, you mean the one that does not come with Csound? Up until this release, Mike and I had quite different build setups.On top of this, Csound was linked dynamically to a lot of different dlls. With the new build system most things are linked statically. This should dramatically reduce the amount of these Windows dll errors, but I foresee a slightly rocky ride ahead for the next week or two until the dust settles on this next Csound release. Fingers crossed that the Windows version of Cabbage will soon be as stable as the Linux and OSX versions.

@gsenna, there is currently a thread on the Csound-dev list about 32/64bit installers. It might be worth your while voicing your concerns there maybe? It doesn’t look like a 32bit version of CsoundQT will be available for Windows in the future.

I’ve just subscribed and sent an email to the dev list. Thanks Rory!

As I said before, I’m happy to continue releasing 32-bit build. But I understand that CsoundQT is the bigger issue.

[update] I’m still waiting for the next release of Csound on Windows. We are still working through a few issues, but once it is ready I will build a 32-bit version for you.

That’s great Rory! As the first term of our course has just started we are asking everyone to install 6.07_beta2 in their netbooks. So, we have to give them a pdf with instructions on how to solve the libflac and libstdc+±6 problem in case they appear. Hopefully with the new static building thing we won’t have to do that next year.

Many thanks!

This is with the 32-bit build right? A few recent commits seems to have funcked things up a bit, but Oeyvind and I almost have everything building statically now. Fingers crossed. We definitely won’t need any libflac in the future, and we shouldn’t need a libstc++ either.

32-bit build, yes. 6.07_beta2 is the last installer published in SourceForge for 32-bit Windows. That’s why we are recommending that one.