[Paraview] Paraview's HDF5 upgraded to 1.8.5
Michael Jackson
mike.jackson at bluequartz.net
Wed Aug 25 10:46:28 EDT 2010
I tested an i386/x86_64/ppc and the i386 worked (if listed first)
and the x86_64 and the ppc binaries will fail to initialize the library.
In discussing this issue with the HDF5 folks there are deeper issues
than just #ifdef APPLE && SIZEOF_LONG == 8 type of stuff.
The HDF5 1.6.x series was in even worse shape for universal
binaries than the 1.8 is. I wouldn't trust it with my HDF5 data if it
was built as a universal binary**.
The newer CMake features for universal binary and are currently
NOT being used for various reasons I am sure.
The root of the issue is the generation of the "H5init.c" file which
is based on a single arch on OS X BUT will give different results for
each arch. After that file is produced it is then compiled into the
library. So without the proper modifications to how that file is
generated and run you are setting up for very subtle failures with
HDF5 when building on OS X with multiple archs.
This all applies to HDF5 Version 1.8 as that is the only Official HDF5
release to "support" cmake.
** IF you build HDF5 with each arch in its own build tree then use
"lipo" to combine them all into a universal binary then that _should_
theoretically work. No one has actually tried to prove it yet.
___________________________________________________________
Mike Jackson www.bluequartz.net
Principal Software Engineer mike.jackson at bluequartz.net
BlueQuartz Software Dayton, Ohio
On Aug 25, 2010, at 10:36 AM, Dave Partyka wrote:
> Ahh, I don't think I was ever able to build 32bit+64bit universal
> because of hdf5 build errors even with version 1.6. I thought you
> meant you were building ppc;i386 and that was crashing. Testing out
> a ppc;i386 binary right now seems to work fine.
>
> There are new CMake feature in CheckTypeSize that "should" let you
> build 32bit+64bit binaries. It will produce #ifdef <arch> #else
> pragmas in your configured header to define both sets of type sizes.
> I am guessing you guys are now using that in svn HDF5?
>
> On Wed, Aug 25, 2010 at 10:06 AM, Michael Jackson <mike.jackson at bluequartz.net
> > wrote:
> So the basics would be if you build HDF5 with "i386;x86_64" as the
> archs to build then use the "arch -arch [i386|x86_64] SomeProgram/
> That/Creates/HDF5/Files" and you should crash out pretty quickly
> when it is trying to initialize the HDF5 library. If you build the
> HDF5 project and one of the example hdf5 programs like "h5_group"
> the error will happen. It is very repeatable. There is a long
> private discussion going on currently with the HDF5 developers to
> try and figure out a way forward.
> I just committed some CMake code to the HDF5 SVN Cmake branch to
> basically throw a CMake FATAL_ERROR if more than 1 OS X arch is
> detected during the CMake process.
>
> ___________________________________________________________
> Mike Jackson www.bluequartz.net
> Principal Software Engineer mike.jackson at bluequartz.net
> BlueQuartz Software Dayton, Ohio
>
>
>
>
> On Aug 25, 2010, at 9:58 AM, Dave Partyka wrote:
>
> Hey Mike, I just did a universal build now. What specifically were
> you doing to get the runtime errors?
>
> On Tue, Aug 24, 2010 at 2:50 PM, Michael Jackson <mike.jackson at bluequartz.net
> > wrote:
> So can I back that back off to hdf5 version 1.6.9? There are SERIOUS
> issues with HDF5 version 1.8 being built as a universal binary on OS
> X. One arch will work just fine, the other will give runtime errors.
> So for instance if someone is going to build both ppc and i386
> binaries depending which one they list first the other will not
> work. I can demonstrate this with the latest HDF5 1.8.5 sources.
>
>
> ___________________________________________________________
> Mike Jackson www.bluequartz.net
>
>
> On Aug 23, 2010, at 10:53 AM, Dave Partyka wrote:
>
> Hi All,
>
> Late last week we updated ParaView's hdf5 from 1.6.2 to 1.8.5. In
> addition to the traditional C library we have also brought in the C+
> + version of the library (hdf5_cpp). The high level versions of the
> library are also available (hdf5_hl & hdf5_hl_cpp). This should
> provide ParaView developers a number of avenues to use the latest
> HDF5 in their readers/writes.
>
> The HDF5 group has has started using CMake as a build system for
> HDF5. Using the new build system John Biddiscombe and Brad King were
> able to create a slimmed down version of HDF5 that just builds the
> core libraries and easily integrates into ParaView. Many thanks to
> them for their efforts!
>
> See here for the release notes for HDF5 1.8.x.
>
> http://www.hdfgroup.org/HDF5/doc/ADGuide/WhatsNew180.html
>
> As always, we value feedback from the community. Feel free to
> report any issues. In the mean time I will be monitoring the
> dashboards.
>
> Thanks!
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>
>
>
>
More information about the ParaView
mailing list