Sorry to intrude in this very exclusive coder circle (Iām only a hobbyist), but I need some advice: Iām switching from Delphi to C++, trying to do some VST plugs. I was used to Borland, but after days of frustration trying CBuilder to complile using VSTGUI, I started trying other compilers, like Dev-C++, and the Introductory version of MCVC I have. I ended up downloading the VisualC++2005 Express compiler, which looks nice, and in the process came across JUCE, and want to give it a try.
I downloaded the latest Platform SDK, but didnāt find anything like āthe Microsoft SDKā as mentioned in the JUCE documentation. Nevertheless, after figuring out how to set up the searchpaths in VCExpress (now isnāt that ridiculous, having to edit manually some definitions file, AND delete a .dat somewhere else after each edit else the changes are not taken into account :evil: ), I got rid of most of the errors and JUCE lib now compiles with only 1 error: missing dsound.h.
ModulR mentions a āmissing filesā pack but the link seems dead. Iād prefer not to download and install another 200MB (I had XP SP1 , so downloaded SP2, all the MS updates, the Platform SDK, VCExpress and docs, Iām getting tired), so is there a possibility somewhere to get this file, or to get the JUCE libs to compile without it and still being able to link against JUCE lib without unresolved externals?
Thanks
Dirk
PS I do insist Iām a hobbyist coder, so I need to be walked through very oftenā¦I change from Delphi to C++, from Borland to MS, fromVSTGUI to JUCE, so please be indulgentā¦
Thanks for your concern (and many thanks for sharing your work!).
I had a dsound.h in the VC98 includes directory that VC++6 (Introductory Edition) installed, it has a time stamp from 1998, and I donāt want to risk conflicts with outdated files. There wasnāt any in the (full and latest) Platform SDK. I finally downloaded the DX9 SDK and the latest update (yet another 400Megs
I managed to compile both the jucelib_static_debug.lib and the jucelib_static.lib succesfully. I didnāt try them yet (I just finished the whole download/install/compile process), but I notice something that surprises me: the _debug version is around 13Mb, the _release version is over 20Mb. Is that correct?
BTW, you can now update the āgetting startedā section in your doc to reflect the status of VisualC++Express2005 beta2.
Hi,
Maybe you are using an old platform SDK. CL (MS C++ compiler) changed much between VC6 and VC8 (Visual Studio 2005) and old template declaration donāt compile anymore.
I donāt know what version of the platform SDK you are using but JUCE works fine with āMicrosoft Platform SDK for Windows XP SP2ā. Please note that it does not include the DirectX SDK, so you still have to download it (I personnaly use the April 2005 version).
Well, no, as I mentioned before. I use the latest (dowloaded yesterday) Platform SDK, the latest (downloaded today) DirectX9SDK, the latest (installed yesterday) version of VisualC++Express. All is really totally up-to-date, including the OS (XP Pro SP2, all updates done) so thatās not where the problem lies.
If you do have a solution to this, itād be really good to see the response. Iāve got exactly that same compiler error with VS2005 Beta 2 and the latest Platform SDK, etc.
Good point there - I usually try to put my own includes after system ones for exactly this sort of reason, so Iāll move that down a bit like you say.
Iāve also got a bunch of other fixes to release for the VST wrapper, as Iāve been debugging it under nuendo on the mac this week, where Iāve had an absolute nightmare with recursive message loops because of the stupid way they track mouse-drags.
(Oh - and we should have another beer soon, tooā¦)
I checked, the path order here looks ok.
I donāt have a āMicrosoft SDKā on my system though, only the latest Platform SDK. But I could build the juce libs, and built a VST with VSTGUI too, so it seems ok.
Ah, that reminds me of a headache I had with vstgui: for some reason, VisualC++Express didnāt recognise this in vstgui.h:
so nothing worked until I moved the the define out of the if-endif to make it true always. Could something similar happen here?
If I understand your last post cprrectly, you still have problems compiling. If so, I was in exactly the same situation as you (with the same error messages, SDKs, etc.). If you canāt wait for Jules to post his new fixes, I suggest (in the interim) making the change to juceVSTwrapper.cpp line 75 I described a couple of messages back.
If Iāve misunderstood and you already managed to get it working, feel free to ignore this!
I have been having similar issues with this, but after some time I have been able to compile the juce hello world demo. When I try to load the Juce_vst Solution in the JuceAudioPlugindemo I get an error stating āProject file ā C:\juce\projects\juce\build\win32\vcexpress\JUCE.vcprojā could not be loaded. The project is either missing from disk or access was denied.ā
If I click ok. The project does load, and in the class view it looks to be normal, although there is no JUCE.vcproj in the tree stucture. Once here if I build the project, then I get the error shown above with the missing" ( " thing. So I made the JuceWrapper modification suggested above, and then when I build the project I get an error stating that the file Carbon\carbon.h cannot be found?
Any ideas on how to get through this. I am absolutly a beginner hobbiest in this so, forgive my ignorance and please provide some detail.
[quote=āo2eā]I have been having similar issues with this, but after some time I have been able to compile the juce hello world demo. When I try to load the Juce_vst Solution in the JuceAudioPlugindemo I get an error stating āProject file ā C:\juce\projects\juce\build\win32\vcexpress\JUCE.vcprojā could not be loaded. The project is either missing from disk or access was denied.ā
If I click ok. The project does load, and in the class view it looks to be normal, although there is no JUCE.vcproj in the tree stucture.
Mark[/quote]
Yes, I forgot to mention that :oops: I have the same prompt. If I click OK, the project loads, and I have the JUCE.vcproj in the tree, but itās greyed out.
Just as a followup to the missing dsound.h issue raised in the first post to this thread:
Iām doing a clean install on a PC right now, and noticed taht sometime in the last few weeks the Platform SDK has migrated from the XP SP2 version to the Server 2003 SP1 version. It seems the latter, unlike the XP PSDK, does not include the Microsoft SDK stuff.
So for people reporting that a find files does not turn up dsound.h on their hard drive, this is probably why.
Yes, thatās indeed so. I couldnāt find any other solution than to install the whole DirectX SDK as well. Fortunately I have a 2 Mb/sec DSL connection! Some other stuff is missing/deprecated, like libc.lib. I get many warnings like āstrcpy is deprecatedā when trying to compile existing code. It works though, but thatās not an ideal starting point for a beginner in C++. When you start learning something new, and you canāt even manage to compile someone elses code thatās reputedly correct, you finish tearing your hair offā¦I succeeded in making a VST using the VSTGUI libs but even had to edit stuff in the ādonāt edit, inheritā VSTGUI source files. Still canāt get the JUCE vst plugin to compile though.
Dirk
(BTW, if you want to install these SDKās, Iād advise to download the ISO image files instead of using the web installer. The web installer really crawls, I couldnāt get more than 3Kb/sec. )
and I see in VS++2005 that after making the abovementioned mod, the #ifdef JUCE_WIN32 condition is considered false, so we get the Carbon.h error. Very similar to the VSTGUI error I talked about. This could be an issue related to the change of the Platform SDK, but I need help here!
So I moved #define winnt.h to the top, and managed to build. The debug version crashes the host (breakpoint error), and but the release version seems to work, except that there are some serious display problems.
Wow! I think I fixed it! The vst example compiled, and I was able to open it in Cubase. After some tinkering it frenken works.
First - getting all the includes and libraries pointing to the right place took some time. Here is what I ended up with for the VCProjectEngine.Dll.Express file:
Plus all the configuration Microsoft gives you when you first setup Express,
Then I followed the idea of moving the( #include āā¦/ā¦/juce_AudioFilterBase.hā) in the JuceVstWrapper file., but since that gave me the carbon.h error I ended up moving it out of the ifdef statement, so the code looks like