[vtkusers] Compile with Visual Studio 2008
Mike Jackson
mike.jackson at bluequartz.net
Wed Feb 4 13:55:20 EST 2009
Alon,
When you build vtk with Visual Studio there should be a project in
the VS solution called "INSTALL". Build that and vtk will be installed
into the CMAKE_INSTALL_PREFIX location. Then in that installed location
look for the missing file.
If it can not be found then this must be a bug in the vtk
installation code.
Mike
Alon Mozes wrote:
> Sorry, I think I had missed both Michael's and Arturo's posts (Should I not be expecting an email response or notification of response? No sign of a reply in any junk folder either or even in the digests. Maybe I'm doing something stupid with my multiple email addresses...). I've found the posts online through markmail and will try to address them...
>
> Michael,
> I did build VTK myself. To be clear: I download the source, use CMake to configure it by pointing to the source folder and creating a new build folder, and then compile in Visual Studio using the solution file I find in that newly populated build directory. I found no sign of vtkMFCConfigure.h anywhere. From what I understand, I think this is a bug in the vtk installation code.
>
> The only trick is that I changed one vtk MFC file to get VTK to compile (that winver bug; see the origin of this thread) and then recompiled. I don't imagine that affected this problem. I am currently not at my dev machine, but when I get back, I can try from scratch with downloading vtk, configuring in CMake, making the change for that winver bug, and compiling in VS and seeing if that file exists (or I guess it should exist immediately after the CMake stage?).
>
> Arturo,
> Thanks, that was my original concern. I'd still like to use VS from start to finish if I can since I'm more familiar with it, but I'm glad to know it should be a minor change if I can't get this working.
>
> David,
> Long story short, if I understand right, either that file exists and I'm not properly pointing to it in my project settings, or it doesn't exist and it's a vtk bug. I'm pretty sure it doesn't exist (I recall searching my entire hard drive for it and came up with nothing; I can double check tonight).
>
> Thanks again for all the help.
>
> --- On Wed, 2/4/09, David Cole <david.cole at kitware.com> wrote:
>
> From: David Cole <david.cole at kitware.com>
> Subject: Re: [vtkusers] Compile with Visual Studio 2008
> To: "Alon Mozes" <amozes77 at yahoo.com>
> Cc: vtkusers at vtk.org, "Jim" <jiksed at yahoo.com>
> Date: Wednesday, February 4, 2009, 9:15 AM
>
>
> Using CMake is not *required*, it is simply strongly recommended because it avoids problems exactly like you are seeing right now.
>
>
> All you need to do is add an include directory so that Visual Studio can find the file it's looking for.
>
>
>
> As Mike Jackson pointed out, though, if you're using an install tree of VTK and the file is not actually installed, then you've found a bug in VTK's install rules. Please let us know if that's the case, so we can fix it....
>
>
>
>
> Thanks,
> David Cole
>
>
>
> On Wed, Feb 4, 2009 at 11:26 AM, Alon Mozes <amozes77 at yahoo.com> wrote:
>
>
>
>
>
>
> I've read a bit more about using CMake, and if I understand correctly, we would have to re-run CMake only when we change our project settings, not every time we build as I mistakenly said before. This is less painful than what I'd thought, but still more difficult than I'd like as project settings do change from time to time and we're now incorporating an extra application on a semi-regular basis. I'm very accustomed to dealing with the VS project settings format and am a total newbie to the CMake lists. If you insist that CMake is required to getting the project to work, I will invest the effort. Otherwise, I would prefer to simply tweak what was an already perfectly functioning project.
>
> Thanks for the advice.
>
>
> --- On Wed, 2/4/09, David Cole <david.cole at kitware.com> wrote:
>
>
> From: David Cole <david.cole at kitware.com>
> Subject: Re: [vtkusers] Compile with Visual Studio 2008
> To: "Alon Mozes" <amozes77 at yahoo.com>
> Cc: vtkusers at vtk.org, "Jim" <jiksed at yahoo.com>
>
> Date: Wednesday, February 4, 2009, 3:45 AM
>
>
>
>
>
> Are you using CMake to build your project?
>
> The file vtkMFCConfigure.h is in your VTK build tree. If you are using CMake to build your project with find_package(VTK) and include(${VTK_USE_FILE}) then it should just work....
>
> If you're not using CMake, I would recommend using it for your VTK dependent projects. It's much easier. It's probably just a matter of adding extra include directories for non-CMake-based projects.
>
>
> HTH,
> David
>
>
>
> On Tue, Feb 3, 2009 at 9:15 PM, Alon Mozes <amozes77 at yahoo.com> wrote:
>
>
>
>
>
>
> Maybe I spoke too soon...
>
> I'm able to compile VTK now without complaints about MFC. However, now I try to compile my application and I get an error:
>
> 1>C:\Program Files\Vtk-5.2.1-src\GUISupport\MFC\vtkMFCWindow.h(24) : fatal error C1083: Cannot open include file: 'vtkMFCConfigure.h': No such file or directory
>
> I include vtkMFCWindow.h in one of my own project header files, and that in turn includes vtkMFCConfigure.h, but I can't find that file anywhere (I do find a vtkMFCConfigure.h.in in the vtk source folder). I am using VTK 5.2.1. I checked the previous version I was using - VTK 5.0.3 - and the vtkMFCWindow.h file doesn't include vtkMFCConfigure.h. Instead, it includes vtkConfigure.h, so this seems to be a new change. Any idea what I'm doing wrong? I notice there's an MFC project setting for compiling using Standard Windows, MFC in a shared dll, and MFC in a static library. This setting is available for both the VTK ALL_BUILD project as well as my own. I've tried using standard windows and static library with both with no luck. Maybe this setting matters somehow?
>
> Any help would be greatly appreciated. Thanks.
>
>
>
> --- On Mon, 2/2/09, David Cole <david.cole at kitware.com> wrote:
>
> From: David Cole <david.cole at kitware.com>
>
> Subject: Re: [vtkusers] Compile with Visual Studio 2008
> To: "Alon Mozes" <amozes77 at yahoo.com>
>
> Cc: vtkusers at vtk.org, "Jim" <jiksed at yahoo.com>
> Date: Monday, February 2, 2009, 4:28 AM
>
>
>
>
>
> Did you not see my response to this thread the other day....?
>
>
> The first three lines of vtkMFCWindow.cpp are the culprit. They read:
>
>
> #ifndef WINVER // Allow use of features specific to Windows 95 and Windows NT 4 or later.
> #define WINVER 0x0400
> #endif
>
>
> Remove them or comment them out and it should work ok with VS2008.
>
>
> Sorry for the inconvenience....
>
>
>
>
> HTH,
> David
>
>
>
>
>
> On Sun, Feb 1, 2009 at 11:27 PM, Alon Mozes <amozes77 at yahoo.com> wrote:
>
>
>
>
>
>
> Not sure why I had to disable video for windows. I just know that I compiled and many errors seems to come from a conflict there (with the vtk rendering lib if I remember correctly). I got rid of that and still have one problem with the MFC lib which I know I need. Anyone out there compile VTK with Visual Studio 2008 while keeping the MFC flag? Is this a problem with my Windows settings somehow? My Visual Studio settings? Or VTK?
>
> Thanks,
> Alon
>
> --- On Thu, 1/29/09, Jim <jiksed at yahoo.com> wrote:
>
> From: Jim <jiksed at yahoo.com>
>
> Subject: Re: [vtkusers] Compile with Visual Studio 2008
> To: "Alon Mozes" <amozes77 at yahoo.com>, vtkusers at vtk.org
> Date: Thursday, January 29, 2009, 8:14 AM
>
>
>
>
>
>
> I am doing the same thing and got a bunch of errors. I wonder why you have to turn off VTK_USE_VIDEO_FOR_WINDOWS? Thank you.
>
>
> Alon Mozes <amozes77 at yahoo.com> wrote:
>
>
>
>
>
> Hi All,
> I have a great project using VTK/ITK in an older version of Visual Studio. I need to upgrade to the latest version of VS (Visual Studio 2008 Professional Edition). I've found that I must recompile VTK/ITK to properly do so. I've started from scratch and installed the latest CMake 2.6 which offers an option to use the Visual Studio 2008 compiler and VTK 5.2.1. For the configuration, I turn on VTK_USE_MFC (via VTK_USE_GUISUPPORT) and VTK_RENDERING. Then I compile the ALL_BUILD in Visual Studio and I get several errors. I reconfigured CMake to turn off the VTK_USE_VIDEO_FOR_WINDOWS and all but one error goes away. I'm still stuck with the following failure (which seems to be in the vtkMFC package which I think is critical for me):
>
> C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\sdkddkver.h(217) : fatal error C1189: #error : _WIN32_WINNT settings conflicts with _WIN32_IE setting
>
> When I dig a little, I'm taken to the following lines of code:
>
> #if((_WIN32_WINNT < _WIN32_WINNT_WIN2K) && (_WIN32_IE > _WIN32_IE_IE60SP1))
> #error _WIN32_WINNT settings conflicts with _WIN32_IE setting
> #endif
>
> Its clearly passing this conditional and triggering this error. The weird thing is that the first part of the conditional should be 0 (the values seem to be 0x0600 < 0x0500) so the whole thing should not pass. What's going on here? Any help would be greatly appreciated.
>
> Thanks for the help.
>
>
>
> _______________________________________________
> This is the private VTK discussion list.
> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
>
>
>
> _______________________________________________
> This is the private VTK discussion list.
> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
>
>
>
>
>
>
>
>
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> This is the private VTK discussion list.
> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
More information about the vtkusers
mailing list