[Insight-users] MINC 1/2 external module

Steven Mocking smocking at nmr.mgh.harvard.edu
Mon Apr 2 16:55:03 EDT 2012


Hi Vladimir,

Thanks for your efforts. Definitely looking forward to using MINC with 
ITK and decided to give it a try today, but get compiler errors:

InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c: 
In function 'current_cpu_seconds':
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:85: 
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'first'
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:85: 
error: 'first' undeclared (first use in this function)
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:85: 
error: (Each undeclared identifier is reported only once
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:85: 
error: for each function it appears in.)
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:86: 
error: 'clock_t' undeclared (first use in this function)
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:86: 
error: expected ';' before 'current'
InsightToolkit-4.1.0/Modules/External/minc/volume_io/Prog_utils/time.c:97: 
error: 'current' undeclared (first use in this function)
make[2]: *** 
[Modules/External/minc/CMakeFiles/ITKIOMINC.dir/volume_io/Prog_utils/time.c.o] 
Error 1
make[1]: *** [Modules/External/minc/CMakeFiles/ITKIOMINC.dir/all] Error 2
make: *** [all] Error 2

It seems like time.h is not getting included because HAVE_SYS_TIME_H and 
HAVE_UNISTD_H are defined, but TIME_WITH_SYS_TIME is not, even though my 
system has both sys/time.h and time.h. If I comment out the 
pre-processing directives so that both get included the code compiles 
with warnings:

InsightToolkit-4.1.0/Modules/External/minc/test/../ezminc/minc_io_exceptions.h: 
In constructor 'minc::generic_error::generic_error(const char*, int, 
const char*, int)':
InsightToolkit-4.1.0/Modules/External/minc/test/../ezminc/minc_io_exceptions.h:31: 
warning: declaration of 'code' shadows a member of 'this'
InsightToolkit-4.1.0/Modules/External/minc/test/../ezminc/minc_io_exceptions.h:31: 
warning: declaration of 'msg' shadows a member of 'this'
InsightToolkit-4.1.0/Modules/External/minc/test/../ezminc/minc_io_exceptions.h:31: 
warning: declaration of 'line' shadows a member of 'this'
InsightToolkit-4.1.0/Modules/External/minc/test/../ezminc/minc_io_exceptions.h:31: 
warning: declaration of 'file' shadows a member of 'this'
InsightToolkit-4.1.0/Modules/External/minc/test/itkMINCImageIOTest.cxx: 
At global scope:
InsightToolkit-4.1.0/Modules/External/minc/test/itkMINCImageIOTest.cxx:44: 
warning: 'void RandomPix(vnl_random&, double&)' defined but not used

Unfortunately linking fails (full text in attachment):

../../../../lib/libITKIOMINC-4.1.a(minc_1_rw.cpp.o): In function 
`minc::minc_1_writer::open(char const*, std::vector<minc::dim_info, 
std::allocator<minc::dim_info> > const&, int, nc_type, int)':
minc_1_rw.cpp:(.text+0x2633): undefined reference to `H5Iget_type'
../../../../lib/libITKIOMINC-4.1.a(minc_1_rw.cpp.o): In function 
`minc::minc_1_reader::open(char const*, bool, bool, bool)':
minc_1_rw.cpp:(.text+0x2c15): undefined reference to `H5Iget_type'
../../../../lib/libITKIOMINC-4.1.a(netcdf_convenience.c.o): In function 
`miclose':
netcdf_convenience.c:(.text+0x1300): undefined reference to `H5Iget_type'
../../../../lib/libITKIOMINC-4.1.a(netcdf_convenience.c.o): In function 
`miopen':
netcdf_convenience.c:(.text+0x18f1): undefined reference to 
`H5check_version'
netcdf_convenience.c:(.text+0x1929): undefined reference to 
`H5check_version'
../../../../lib/libITKIOMINC-4.1.a(hdf_convenience.c.o): In function 
`hdf_access':
hdf_convenience.c:(.text+0x50): undefined reference to `H5Eauto_is_v2'
hdf_convenience.c:(.text+0x69): undefined reference to `H5Eget_auto2'
hdf_convenience.c:(.text+0x74): undefined reference to `H5Eset_auto2'
... <snip hundreds of lines> ...

Regards,
   Steven

On 03/21/12 17:20, Vladimir S. FONOV wrote:
> Hello Everybody,
>
>
> I have managed to create an External module for ITKv4 to add MINC1 and 
> MINC2 io support.
>
> Unfortunately installation requires tweaking CMake/UseITK.cmake
>
> So, for those who are interested in trying it out:
> after obtaining sources of ITKv4, apply provided patch ( it adds minc 
> file format to the list of recognized formats) and clone minc into 
> external module directory:
>
>
> patch < add_minc_file_format.patch
> cd  Modules/External/
> git clone git://github.com/vfonov/minc.git
>
>
> To compile you would need to have netcdf library installed in the 
> system, module will use HDF5 bundled with ITK.
>
> As you can see the whole minc project is inserted as a module, if you 
> think that it would be better idea to have only ITK - wrapper 
> interface in the module let me know.
>
>
>
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://www.kitware.com/products/protraining.php
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users



The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20120402/105a6ea9/attachment-0001.htm>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ITK_MINC_linking_errors.txt
URL: <http://www.itk.org/pipermail/insight-users/attachments/20120402/105a6ea9/attachment-0001.txt>


More information about the Insight-users mailing list