[IGSTK-Users] 64 bit shared libs IGSTK

Maarten Beek beekmaarten at yahoo.com
Tue Jun 8 17:11:00 EDT 2010


Ps:

I reduced the number of linking errors from 55 to 21 by also linking to the following libraries:

ITKBasicFilters.lib
itkvnl.lib
itkvnl_algo.lib
itkv3p_netlib.lib
vtkImaging.lib
vtkFiltering.lib

The remaining LNK2001 errors all involve igstk functions.


----- Forwarded Message ----
From: Maarten Beek <beekmaarten at yahoo.com>
To: Patrick Cheng <cheng at isis.georgetown.edu>
Cc: igstk-users at public.kitware.com
Sent: Tue, June 8, 2010 4:34:07 PM
Subject: Re: [IGSTK-Users] 64 bit shared libs IGSTK


I experience similar warnings regarding the use of unsafe functions like sscanf.

I checked both ITK and VTK. Both were built with the x64 target (although VTK was re-built when I selected Build whereas ITK just generated the expected 'up-to-date' message).

I removed the entire IGSTK directory and started with extracting the *.zip file. Although IGSTK_USE_SceneGraphVisualization was unchecked in CMake, it did appear in the solution. This led to numerous linking errors. Removing this project manually from the solution led to a successful built and installation.

However, when I try to build the Example\Installation, the following linking errors are generated (the project is linked to IGSTK.lib and ITKCommon.lib):
1    error LNK2001: unresolved external symbol "public: virtual __cdecl igstk::Transform::~Transform(void)" (??1Transform at igstk@@UEAA at XZ)    HelloWorld.obj    
2    error LNK2001: unresolved external symbol "public: __cdecl igstk::Transform::Transform(void)" (??0Transform at igstk@@QEAA at XZ)    HelloWorld.obj    
3    error LNK2001: unresolved external symbol "private: class igstk::CoordinateSystem const * __cdecl igstk::CoordinateSystemDelegator::GetCoordinateSystem(void)const " (?GetCoordinateSystem at CoordinateSystemDelegator@igstk@@AEBAPEBVCoordinateSystem at 2@XZ)    HelloWorld.obj    
4    error LNK2001: unresolved external symbol "public: __cdecl igstk::Transform::Transform(class igstk::Transform const &)" (??0Transform at igstk@@QEAA at AEBV01@@Z)    HelloWorld.obj    
<...>
54    error LNK2001: unresolved external symbol "public: __cdecl vnl_svd<double>::vnl_svd<double>(class vnl_matrix<double> const &,double)" (??0?$vnl_svd at N@@QEAA at AEBV?$vnl_matrix at N@@N at Z)    HelloWorld.obj    
55    error LNK2001: unresolved external symbol "public: void __cdecl igstk::Transform::SetTranslationAndRotation(class itk::Vector<double,3> const &,class itk::Versor<double> const &,double,double)" (?SetTranslationAndRotation at Transform@igstk@@QEAAXAEBV?$Vector at N$02 at itk@@AEBV?$Versor at N@4 at NN@Z)    HelloWorld.obj    
56    fatal error LNK1120: 55 unresolved externals    E:\IGSTK-4-2\Examples\Installation\x64\Release\Installation.exe    










________________________________
From: Patrick Cheng <cheng at isis.georgetown.edu>
To: Maarten Beek <beekmaarten at yahoo.com>
Cc: igstk-users at public.kitware.com
Sent: Tue, June 8, 2010 5:59:43 PM
Subject: Re: [IGSTK-Users] 64 bit shared libs IGSTK

Hi Maarten,

Actually here is a nightly build submission on our dashboard from a 
64bit machine using VS 2008. It compiles fine except some warning messages.

http://public.kitware.com/dashboard.php?name=igstk

Can you send the error messages? Also can you check to see your ITK and 
VTK are built with x64 target?

Thank you,

Patrick

On 6/7/2010 2:27 PM, Maarten Beek wrote:
> Hi Patrick,
>
> Sorry, I meant to attach the CMakeCache.txt file, but now realize I
> attached the wrong file. Hopefully I now selected the correct file.
>
> I am aware that VC2005 is an 32bit program (it is installed in the
> Program Files (x86) directory), but all other libraries installed fine
> in 64 bit mode. Including Kitware's VTK, ITK. I was hoping IGSTK would
> work as well.
> What about Linux 64bit?
>
> As far as I know, I am building IGSTK in developmental mode
> (IGSTK_DEVELOPMENT_VERSION is checked). If I don't check this option
> CMake complains that I should use ITK 3.8 instead of ITK3.10.1
>
> Thanks for your help,
> Maarten
>
> ------------------------------------------------------------------------
> *From:* Patrick Cheng <cheng at isis.georgetown.edu>
> *To:* igstk-users at public.kitware.com
> *Sent:* Mon, June 7, 2010 7:52:09 PM
> *Subject:* Re: [IGSTK-Users] 64 bit shared libs IGSTK
>
> Hi Maarten,
>
> We haven't done any testing on the 64 bit platform yet. I suspect the
> error is because the the project linked to wrong CLR libraries.
>
> "Visual Studio 2005 will install the 32-bit version 2.0 CLR on an x86
> machine, and both the 32-bit and appropriate 64-bit version 2.0 CLR on a
> 64-bit Windows machine. (Visual Studio 2005 is a 32-bit application and
> when installed on a 64-bit Windows operating system will run under WOW64.)"
>
> Can you send us your CMakeCache.txt file in the binary directory of your
> build? Can you also run an experimental build on IGSTK? That way, we can
> look at the link errors on the IGSTK dashboard.
>
> Thank you,
>
> Patrick
>
> On 6/7/2010 1:29 PM, Maarten Beek wrote:
>  > Hi all,
>  >
>  > I am trying to build the shared libraries of IGSTK on a 64 bit computer
>  > in Release mode.
>  > No luck yet. Numerous LNK2019 errors during build. Also, for example,
>  > for HelloWorld.obj.
>  > Does one have any ideas suggestions? I have attached the CMakeLists.txt
>  > file for reference.
>  >
>  > There is a cyclic dependency between IGSTK and SceneGraphVisualization
>  > which is not allowed with shared libraries according to CMake. So I
>  > unchecked this option in CMake 2.6. However, when I open the generated
>  > *.sln file, the SceneGraphVisualization project is included nonetheless.
>  >
>  > Other information:
>  > Windows Vista
>  > VS 2005
>  > VTK 5.2.1
>  > ITK 3.10.1
>  > Qt 4.4.3
>  > I am able to generate working applications with this set-up without
> IGSTK.
>  >
>  > I realize the versions don't totally match the suggested ones in the
>  > Book. Could this be a reason?
>  >
>  > Thanks - Maarten
>  >
>  >
>  >
>  > _______________________________________________
>  > Powered by www.kitware.com<http://www.kitware.com>
>  >
>>  Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>  >
>  > Follow this link to subscribe/unsubscribe:
>>  http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-users
> _______________________________________________
> Powered by www.kitware.com <http://www.kitware.com>
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-users
>


      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/igstk-users/attachments/20100608/a79660f7/attachment.html>


More information about the IGSTK-Users mailing list