#33857 closed defect (fixed)
InsightToolkit: error: use of undeclared identifier 'equal'
Reported by: | junsungp@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.4 |
Keywords: | Cc: | viviana.siless@…, aksoymurat@…, angleto@…, petrrr | |
Port: | InsightToolkit |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
OS : Mac OS X Lion 10.7.3
gcc version : 4.2
I've tried to install itk on my system with following command.
sudo port install InsightToolkit
but I met an error.
Error: Target org.macports.build returned: shell command failed (see log for details) Log for InsightToolkit is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_InsightToolkit/InsightToolkit/main.log Error: Status 1 encountered during processing.
Attachments (1)
Change History (16)
Changed 13 years ago by junsungp@…
comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Owner: | changed from macports-tickets@… to dweber@… |
Summary: | error in installing of itk with mac ports → InsightToolkit: error: use of undeclared identifier 'equal' |
comment:4 Changed 12 years ago by viviana.siless@…
Hi, Im having the same problem installing InsightToolkit: vnl undeclared identifier 'equal'. Is there any solution?
comment:11 Changed 12 years ago by jalmar@…
I'm experiencing the same problem with MacPorts version 2.1.3 on Mac OS x 10.8.3 when I try to install the InsightToolkit using the command
sudo port install insighttoolkit -doc -python25 +shared
The probleem seemed to be related to the fact Clang rejects a certain kind of construction detailed on the following webpage
http://clang.llvm.org/compatibility.html#dep_lookup_bases
What the webpage tells you is that the statement
return equal( this->data_block(), rhs.data_block() );
on line 657 of the file InsightToolkit-3.16/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h is not a legal construction and should be changed to
return this->equal( this->data_block(), rhs.data_block() );
Notice the 'this->' in front of the the call to equal; from what I understand this is essential to refer base class of the derived class.
There are a few more places where you have to change this illegal construction.
The same problem exists in the file InsightToolkit-3.16/Code/Common/itkParametricPath.txx On line 46 and line 67 (twice! [2x]) you have to change the calls to 'Evaluate(...)' into 'this->Evaluate(...)'
There is another bug as well in the file InsightToolkit-3.16/Code/Common/itkKLMSegmentationBorder.h On line 84, 88, 103, 104, and 109 you have to change the statements with 'rhs.m_Pointer...' into 'rhs->m_Pointer...' (Notice that the dot changes into the arrow)
After that, I could build and install the InsightToolkit using the command
sudo port install insighttoolkit -doc -python25 +shared
without any further problems.
Note sure if this helps any of you. Sorry, I don't know how to create patches, so you'll have to modify the source code yourself. Or maybe someone else can verify these fixes and patch the files for you. I believe they already fixed these particular problems in release 3.20 (see webpage https://itk.icts.uiowa.edu/fisheye/changelog/ITK?cs=68d1a8a60bd919e709e568c9e12477d2f632368a)
comment:12 Changed 10 years ago by mf2k (Frank Schima)
Owner: | changed from dweber@… to macports-tickets@… |
---|
dweber has retired. See #43834.
comment:14 Changed 6 years ago by yan12125 (Chih-Hsuan Yen)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:15 Changed 6 years ago by yan12125 (Chih-Hsuan Yen)
InsightToolkit (3.16.0) has been dropped in favor of InsightToolkit-devel (4.8.2). Feel free to open new issues if you can't install InsightToolkit-devel.
The log says:
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_InsightToolkit/InsightToolkit/work/InsightToolkit-3.16/Utilities/vxl/core/vnl/vnl_matrix_fixed_ref.h:657:12: error: use of undeclared identifier 'equal'