[vtkusers] successful VTK compile for 64BIT WINDOWS
Thomas Lambertz
thomas at hexerei-software.de
Fri May 12 13:24:21 EDT 2006
Hello Jeremy,
thank you for your detailed description how you got VTK 5.0 to work
under x64. I didnt realized that CMake has 2.4.1 entered beta stage so i
tried to set up my VTK-project manually by changing a win32-solution. I
was able to build the libraries - but i was not able to convince
vtkRenderWindowInteractor to give me an output. I saw you made some
changes to vtkWin32RenderWindowInteractor.cxx so i hoped this fixes my
problem. I rebuilded VTK following your detailed instructions - but same
as before.
Can you or someone else confirm this issue ? A fast and easy way to
check are the tutorials in vtk/Examples/Tutorial: Step 1-4 are working
well as they still render "manually" - Step 5-6 change rendering to use
a vtkRenderWindowInteractor - and didnt work (output windows appears -
but only filled black).
Nevertheless your post makes my work much easier - thank you.
Kind regards,
Tom
Jeremy Drysdale wrote:
>
> Hello,
>
> In case anyone is interested, here are the details of how I was able
> to compile VTK on a 64bit WINDOWS workstation running windows 64 bit
> edition:
>
> *Precompile:*
> · Downloaded the following from kitware (_www.kitware.com_):
> o CMake Beta version 2.4.1
> § Cmake-2.4.1-win32.exe
> o VTK source code
> § Vtk-5.0.0.zip
> o VTK data
> § Vtkdata-5.0.0.zip
> · Installed CMake 2.4.1. This install only took a few minutes
> and was successful.
> · Unzipped VTK source code to C:\VTK. This only took a few
> minutes and the unzip was successful.
> · Unzipped VTK data to C:\VTK. This only took a few minutes
> and the unzip was successful.
>
>
> *CMake Generation:*
> · Started CMake and made the following settings:
> o Source code: C:\VTK
> o Binaries: C:\VTK\binaries
>
>
> Clicked “Configure” and set build for to “Visual studio 8 2005 Win 64”
> and clicked OK. Values were updated.
>
>
> · Clicked “Configure” again to set these values.
> · Clicked “OK” to generate build files. This took a few
> minutes and was successful.
>
>
> *Summary of changes necessary for a compile (Changes in **red**):*
> *General Change:*
> · Set the VTK folder to be no longer read-only.
>
> *File vtkWin32RenderWindowInteractor.cxx:*
> · Changed line
> vtkSetWindowLong(this->WindowId,GWL_WNDPROC,(LONG)vtkHandleMessage);
> To:
> vtkSetWindowLong(this->WindowId,GWLP_WNDPROC,(LONG)vtkHandleMessage);
>
> · Changed line
> this->OldProc = (WNDPROC)vtkGetWindowLong(this->WindowId,GWL_WNDPROC);
> To:
> this->OldProc = (WNDPROC)vtkGetWindowLong(this->WindowId,GWLP_WNDPROC);
>
> · Changed line
> vtkSetWindowLong(this->WindowId,GWL_WNDPROC,(LONG)this->OldProc);
> To:
> vtkSetWindowLong(this->WindowId,GWLP_WNDPROC,(LONG)this->OldProc);
>
> *File vtkOpenGLExtensionManager.cxx:*
> · Changed line
> return wglGetProcAddress(fname);
> To:
> return
> (vtkOpenGLExtensionManagerFunctionPointer)wglGetProcAddress(fname);
>
> *File vtkStringArray.cxx:*
> · Changed line
> for (unsigned int j = 0; j < this->Array[i].length(); ++j)
> to:
> for (vtkStdString::size_type j = 0; j < this->Array[i].length(); ++j)
>
> *File btkWin32VideoSource.cxx:*
> · Changed line
> (vtkGetWindowLong(hwnd,GWL_USERDATA));
> to:
> (vtkGetWindowLong(hwnd,GWLP_USERDATA));
>
> · Changed line
> vtkSetWindowLong(this->Internal->ParentWnd,GWL_USERDATA,(LONG)this);
> to:
> vtkSetWindowLong(this->Internal->ParentWnd,GWLP_USERDATA,(LONG)this);
>
> · Changed line
> wc.lpfnWndProc = &vtkWin32VideoSourceWinProc;
> to:
> wc.lpfnWndProc = (WNDPROC)&vtkWin32VideoSourceWinProc;
>
>
> Thanks,
>
> Jeremy
> ------------------------------------------------------------------------
>
> _______________________________________________
> 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