[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