[vtk-developers] Problems installing VTK

Sebastien Jourdain sebastien.jourdain at kitware.com
Sun Mar 22 23:58:15 EDT 2015


You need to properly set cmake so you don't build the swt nor the Jogl components for Java. (You don't need them as you don't know what they are.) Moreover the jvm 32b should also be set via cmake. Otherwise VTK won't build correctly. 

Seb

> On Mar 22, 2015, at 16:05, CSharpdotcom . <csharpdotcom at gmail.com> wrote:
> 
> Hello,
> 
> I decided not to install Visual Studio Express, as according to the
> website Visual Studio Pro was used, which is exactly what I've been
> using.
> 
> Anyway, I created a new build folder and repeated the whole process
> from scratch.  The error I'm still getting is:
> 
> 117>Link:
> 117>     Creating library C:/VTK/lib/Release/vtkRenderingCoreJava.lib
> and object C:/VTK/lib/Release/vtkRenderingCoreJava.exp
> 117>vtkRenderWindowJava.obj : error LNK2019: unresolved external
> symbol __imp__JAWT_GetAWT at 8 referenced in function
> _Java_vtk_vtkPanel_RenderCreate at 12
> 117>C:\VTK\bin\Release\vtkRenderingCoreJava.dll : fatal error LNK1120:
> 1 unresolved externals
> 124>  Generating Code...
> 117>
> 117>Build FAILED.
> 
> which is almost certainly due to Visual Studio trying to use 64 bit
> Java, which is incompatible with the 32 bit code it generates.  I was
> unaware that Visual Studio has to use Java.  This should be easy to
> fix by setting the path it uses to a 32 JVM.
> 
> In addition, there are two other errors which appear to be related to
> the components VTK_JAVA_SWT_COMPONENT and VTK_JAVA_SWT_COMPONENT
> checked in the DMake window, which seem not to be installed in my
> system.  What do they do, and are they needed for what I want to do?
> If so, I need to find out how to install them, otherwise they can
> presumably be ignored.
> 
> Christopher Sharp
> 
>> On Sun, Mar 22, 2015 at 11:04 AM, CSharpdotcom . <csharpdotcom at gmail.com> wrote:
>> Many thanks for your message; what I will do now is backup my VTK
>> folder, then instead of using Visual Studio 2010 Pro, I will download
>> the latest version of Visual Studio C++ Express, which is 2013 I
>> think, and try using DMake again form scratch.  In the process I will
>> note exactly what I did, so if these problems persist, I will have a
>> record.
>> 
>> csharp
>> 
>> On Sun, Mar 22, 2015 at 7:18 AM, Sebastien Jourdain
>> <sebastien.jourdain at kitware.com> wrote:
>>> I didn't see anything strange but can you explain your build process? Which property you changed in cmake and how/what did you build in visual studio?
>>> 
>>> Seb
>>> 
>>> 
>>> 
>>>> On Mar 22, 2015, at 00:11, CSharpdotcom . <csharpdotcom at gmail.com> wrote:
>>>> 
>>>> OK, many thanks, I didn't know that there was such a file, this is
>>>> because I'm so new to VTK and CMake.  The file is in the root folder
>>>> and is attached here.
>>>> 
>>>> I look forward finally to getting this sorted out, as it has now tied
>>>> me up for about a week.
>>>> 
>>>> Christopher Sharp
>>>> 
>>>> On Sat, Mar 21, 2015 at 8:59 PM, Sebastien Jourdain
>>>> <sebastien.jourdain at kitware.com> wrote:
>>>>> I didn't know you had a partial build of VTK. Can you share you
>>>>> CMakeCache.txt.
>>>>> 
>>>>> You must have wrongly setup your build.
>>>>> 
>>>>> Seb
>>>>> 
>>>>> On Sat, Mar 21, 2015 at 6:05 PM, CSharpdotcom . <csharpdotcom at gmail.com>
>>>>> wrote:
>>>>>> 
>>>>>> Hello,
>>>>>> 
>>>>>> Many thanks, but as I'm new ti VTK I don't know which libraries to
>>>>>> load.  However, in looking at:
>>>>>> 
>>>>>> http://www.vtk.org/Wiki/VTK/Examples/Java/Miscellaneous/Cone6
>>>>>> 
>>>>>> which has similar code.  The statement:
>>>>>> 
>>>>>> System.loadLibrary("vtkCommonJava");
>>>>>> 
>>>>>> doesn't load as there is no dll with that name in the folder
>>>>>> C:\VTK\bin\Release, but:
>>>>>> 
>>>>>> System.loadLibrary("vtkCommonCoreJava");
>>>>>> 
>>>>>> does load correctly as there is a dll with that name.  This applies to
>>>>>> a few other files, but not all of them.  Without the required dlls
>>>>>> loaded, even if no errors are produced, the code will not execute.
>>>>>> 
>>>>>> If I go back to the original code when I try and load everything, then
>>>>>> I get the error message:
>>>>>> 
>>>>>> java.lang.UnsatisfiedLinkError:
>>>>>> C:\VTK\bin\Release\vtkChartsCoreJava.dll: Can't find dependent
>>>>>> libraries
>>>>>> 
>>>>>> The file vtkChartsCoreJava.dll is present in that folder, so it is
>>>>>> loaded, but its dependencies cannot be found.  This applies to quite a
>>>>>> few other dll files with dependencies, and I also get a list of a
>>>>>> large number files that were not loaded from the statement:
>>>>>> 
>>>>>> if (!lib.IsLoaded()) System.out.println(lib.GetLibraryName() + " not
>>>>>> loaded");
>>>>>> 
>>>>>> inside the for-loop in an earlier message.
>>>>>> 
>>>>>> It looks that without these large number of files, possibly all of
>>>>>> them, that have not been loaded the code will not work, even if I skip
>>>>>> over the bad loads or put the loop in a try-catch loop.  This must
>>>>>> have something to do with the error message in the log during the
>>>>>> build process with Visual Studio Pro 2010 I did a few days ago.
>>>>>> 
>>>>>> I don't fully understand the log, but the section where it failed is here:
>>>>>> 
>>>>>> 112>Link:
>>>>>> 112>     Creating library C:/VTK/lib/Release/vtkRenderingCoreJava.lib
>>>>>> and object C:/VTK/lib/Release/vtkRenderingCoreJava.exp
>>>>>> 114>  vtkDepthPeeling_fs.cxx
>>>>>> 114>  vtkGaussianBlurPassShader_fs.cxx
>>>>>> 114>  vtkLighting_s.cxx
>>>>>> 114>  vtkLightingHelper_s.cxx
>>>>>> 114>  vtkOpenGLRenderer_PeelingFS.cxx
>>>>>> 114>  vtkOpenGLPropertyDefaultPropFunc_fs.cxx
>>>>>> 114>  vtkOpenGLPropertyDefaultPropFunc_vs.cxx
>>>>>> 112>vtkRenderWindowJava.obj : error LNK2019: unresolved external
>>>>>> symbol __imp__JAWT_GetAWT at 8 referenced in function
>>>>>> _Java_vtk_vtkPanel_RenderCreate at 12
>>>>>> 112>C:\VTK\bin\Release\vtkRenderingCoreJava.dll : fatal error LNK1120:
>>>>>> 1 unresolved externals
>>>>>> 114>  vtkOpenGLPropertyDefaultMain_fs.cxx
>>>>>> 112>
>>>>>> 112>Build FAILED.
>>>>>> 112>
>>>>>> 112>Time Elapsed 00:01:32.30
>>>>>> 
>>>>>> Obviously vtkRenderingCoreJava.dll failed to link, which must be the
>>>>>> cause of the problems I'm having.  This was the only failure, with the
>>>>>> other 387 compilations and linking successful.  If this problem can be
>>>>>> fixed, I hope I will be home and dry.
>>>>>> 
>>>>>> I would most appreciate you or someone else kindly getting this resolved.
>>>>>> 
>>>>>> csharp
>>>>>> 
>>>>>> On Sat, Mar 21, 2015 at 3:04 PM, Sebastien Jourdain
>>>>>> <sebastien.jourdain at kitware.com> wrote:
>>>>>>> Try to load the libraries that you need to load instead of all of them.
>>>>>>> It
>>>>>>> seems that you didn't build everything (which is probably fine).
>>>>>>> 
>>>>>>> Seb
>>>>>>> 
>>>>>>> On Sat, Mar 21, 2015 at 2:58 PM, CSharpdotcom . <csharpdotcom at gmail.com>
>>>>>>> wrote:
>>>>>>>> 
>>>>>>>> I already had PATH=C:\VTK\bin\Release, and added ;%PATH% at the end,
>>>>>>>> but it still doesn't work, and get the following output:
>>>>>>>> 
>>>>>>>> java.lang.UnsatisfiedLinkError:
>>>>>>>> C:\VTK\bin\Release\vtkChartsCoreJava.dll: Can't find dependent
>>>>>>>> libraries
>>>>>>>>   at java.lang.ClassLoader$NativeLibrary.load(Native Method)
>>>>>>>>   at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)    at
>>>>>>>> java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
>>>>>>>>   at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1855)
>>>>>>>>   at java.lang.Runtime.loadLibrary0(Runtime.java:870)
>>>>>>>>   at java.lang.System.loadLibrary(System.java:1119)
>>>>>>>>   at vtk.vtkNativeLibrary.LoadLibrary(vtkNativeLibrary.java:214)
>>>>>>>> at vtk.vtkNativeLibrary.LoadLibrary(vtkNativeLibrary.java:214)
>>>>>>>>   at
>>>>>>>> vtk.vtkNativeLibrary.LoadAllNativeLibraries(vtkNativeLibrary.java:149)
>>>>>>>>   at
>>>>>>>> 
>>>>>>>> vtk.sample.rendering.AwtConeRendering.<clinit>(AwtConeRendering.java:19)
>>>>>>>> java.lang.UnsatisfiedLinkError:
>>>>>>>> C:\VTK\bin\Release\vtkDomainsChemistryJava.dll: Can't find dependent
>>>>>>>> libraries
>>>>>>>>   at java.lang.ClassLoader$NativeLibrary.load(Native Method)
>>>>>>>>   at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
>>>>>>>>   at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1855)
>>>>>>>>   at java.lang.Runtime.loadLibrary0(Runtime.java:870)
>>>>>>>>   at java.lang.System.loadLibrary(System.java:1119)
>>>>>>>>   at vtk.vtkNativeLibrary.LoadLibrary(vtkNativeLibrary.java:214)
>>>>>>>>   at
>>>>>>>> vtk.vtkNativeLibrary.LoadAllNativeLibraries(vtkNativeLibrary.java:149)
>>>>>>>>   at
>>>>>>>> 
>>>>>>>> vtk.sample.rendering.AwtConeRendering.<clinit>(AwtConeRendering.java:19)
>>>>>>>> ...................
>>>>>>>> 
>>>>>>>> These error messages continue, then a list of files not loaded are
>>>>>>>> printed out, as given in the source code.
>>>>>>>> 
>>>>>>>> Based on these error messages it's picking up the dll files in the
>>>>>>>> \Release folder, but it's unable to find other files that these dll
>>>>>>>> files depend on.
>>>>>>>> 
>>>>>>>> Do you want a full listing of the Java source file?  The
>>>>>>>> AwtConeRendering class starts off with:
>>>>>>>> 
>>>>>>>> static {
>>>>>>>>   System.out.println(System.getProperty("java.library.path"));
>>>>>>>>   if (!vtkNativeLibrary.LoadAllNativeLibraries()) {
>>>>>>>>     for (vtkNativeLibrary lib : vtkNativeLibrary.values()) {
>>>>>>>>       if (!lib.IsLoaded()) {
>>>>>>>>         System.out.println(lib.GetLibraryName() + " not loaded");
>>>>>>>>       }
>>>>>>>>     }
>>>>>>>>   }
>>>>>>>>   vtkNativeLibrary.DisableOutputWindow(null);
>>>>>>>> }
>>>>>>>> 
>>>>>>>> which is followed by the main() method, which contains statements such
>>>>>>>> as:
>>>>>>>> 
>>>>>>>> vtkConeSource cone = new vtkConeSource();
>>>>>>>> 
>>>>>>>> csharp
>>>>>>>> 
>>>>>>>> On Sat, Mar 21, 2015 at 10:26 AM, Sebastien Jourdain
>>>>>>>> <sebastien.jourdain at kitware.com> wrote:
>>>>>>>>> Te java.library.path is not enough and you need to add into your
>>>>>>>>> environment
>>>>>>>>> PATH the following directory, C:\VTK\bin\Release.
>>>>>>>>> 
>>>>>>>>> set PATH=C:\VTK\bin\Release;%PATH%
>>>>>>>>> 
>>>>>>>>> Seb
>>>>>>>>> 
>>>>>>>>> On Sat, Mar 21, 2015 at 10:33 AM, CSharpdotcom .
>>>>>>>>> <csharpdotcom at gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>> Hello,
>>>>>>>>>> 
>>>>>>>>>> I'm new to VTK and this is my first posting here or on any other
>>>>>>>>>> forum
>>>>>>>>>> related to VTK.
>>>>>>>>>> 
>>>>>>>>>> I've been trying for about a week to get VTK installed and running
>>>>>>>>>> on
>>>>>>>>>> my computer.  The project I'm working on is to use Java with VTK to
>>>>>>>>>> represent 3D graphics, which I hope to use with NetBeans 8.0.2.  I
>>>>>>>>>> also have Visual Studio Pro 2010.
>>>>>>>>>> 
>>>>>>>>>> After failed attempts in installing VTK  6.2.0 and the latest
>>>>>>>>>> version
>>>>>>>>>> of CMake, from the link
>>>>>>>>>> 
>>>>>>>>>> http://www5.cs.fau.de/en/conrad/tutorials/itk-and-vtk-wrapping/wrap-vtk
>>>>>>>>>> I downloaded and unzipped VTK 6.1.0 and CMake 3.0.0, then installed
>>>>>>>>>> them.
>>>>>>>>>> 
>>>>>>>>>> I then ran CMake according to the instructions on that link and
>>>>>>>>>> installed the generated code in the folder C:\VTK.  I then clicked
>>>>>>>>>> on
>>>>>>>>>> the file VTK.sin in that folder, which opened up Visual Studio and
>>>>>>>>>> started compiling the code with a large number of modules in the
>>>>>>>>>> project.  This took about an hour, and on completion, generated the
>>>>>>>>>> line at the end:
>>>>>>>>>> 
>>>>>>>>>> Build: 387 succeeded, 1 failed, 0 up-to-date, 0 skipped
>>>>>>>>>> 
>>>>>>>>>> I saved this in a file, which is very long, and after some effort
>>>>>>>>>> found the error message:
>>>>>>>>>> 
>>>>>>>>>> 112>C:\VTK\bin\Release\vtkRenderingCoreJava.dll : fatal error
>>>>>>>>>> LNK1120:
>>>>>>>>>> 1 unresolved externals
>>>>>>>>>> 
>>>>>>>>>> In the mean time I attempted to recompile the project, which was
>>>>>>>>>> much
>>>>>>>>>> quicker, and got the same message.  In  recompiled I checked the
>>>>>>>>>> "INSTALL" option, which had not previously been checked, although I
>>>>>>>>>> don't know if that is significant.
>>>>>>>>>> 
>>>>>>>>>> Located in the folder \VTK\java\sample\rendering is the source file
>>>>>>>>>> AwTConeRendering.java, which apparently has not been compiled.  I
>>>>>>>>>> created a NetBeans project and copied that file into it, then linked
>>>>>>>>>> vtk.jar in the folder \VTK\bin to the project, and all imports were
>>>>>>>>>> satisfied.  In setting the Windows path to point to the dll files in
>>>>>>>>>> \VTK\bin\Release, the application appears to pick up the dll files
>>>>>>>>>> correctly, however, I get the following error message:
>>>>>>>>>> 
>>>>>>>>>> java.lang.UnsatisfiedLinkError:
>>>>>>>>>> C:\VTK\bin\Release\vtkChartsCoreJava.dll: Can't find dependent
>>>>>>>>>> libraries
>>>>>>>>>> 
>>>>>>>>>> repeated for many dll files.  Incidentally, as Visual Studio dlls
>>>>>>>>>> are
>>>>>>>>>> all 32 bits, as far as I know, I set up NetBeans to use a 32 bit
>>>>>>>>>> JVM.
>>>>>>>>>> This had previously been tested successfully with a test dll I
>>>>>>>>>> created
>>>>>>>>>> with Visual Studio and could execute with NetBeans.
>>>>>>>>>> 
>>>>>>>>>> This problem is presumably related to the first error mentioned
>>>>>>>>>> above,
>>>>>>>>>> and would be most grateful in getting this issue resolved.  As I
>>>>>>>>>> said,
>>>>>>>>>> I'm new to VTK, and in fact only in the last couple of weeks have
>>>>>>>>>> tried for the first time to call a dll file from a Java application
>>>>>>>>>> on
>>>>>>>>>> a Windows computer.
>>>>>>>>>> 
>>>>>>>>>> In the Java code I added the statement:
>>>>>>>>>> 
>>>>>>>>>> System.out.println(System.getProperty("java.library.path"));
>>>>>>>>>> 
>>>>>>>>>> to check that the path was correct, which is the case.
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Powered by www.kitware.com
>>>>>>>>>> 
>>>>>>>>>> Visit other Kitware open-source projects at
>>>>>>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>>>>>> 
>>>>>>>>>> Search the list archives at:
>>>>>>>>>> http://markmail.org/search/?q=vtk-developers
>>>>>>>>>> 
>>>>>>>>>> Follow this link to subscribe/unsubscribe:
>>>>>>>>>> http://public.kitware.com/mailman/listinfo/vtk-developers
>>>> <CMakeCache.txt>


More information about the vtk-developers mailing list