[Trilinos-Users] [EXTERNAL] EpetraExt HDF5 and UMFPACK TPL

Simone Pezzuto junki.gnu at gmail.com
Fri Aug 3 01:23:00 MDT 2012


Dear James,

                          EpetraExt uses, starting from version 10.8, HDF5
1.8.x in place of HDF5 1.6.x.

On the other hand, there are two api version inside HDF5 1.8.x, namely 1.8
and 1.6. The former are marked
with a postfix "2" (for instance, H5Dopen2), while the latter with a "1"
(H5Dopen1). Eventually a macro
defines H5Dopen to be one of the two depending on the installation ("use
1.6 api by default") and/or some flags.

Ubuntu (and some others) distributes HDF5 1.8.x with 1.6 api by default,
so, H5Dopen is H5Dopen1. Which
has less arguments in the function call, and a compilation error is raised.

My patch simply states that H5Dopen is H5Dopen2 (and few others functions),
no matter of what the
default api is. The only requirement is HDF5 1.8.x.

About HDF5 TPL, it would be nice to check the version and if the flag
H5_USE_16_API_DEFAULT is defined.


Best!
 Simone

2012/8/2 Willenbring, James M <jmwille at sandia.gov>

>  Simone,****
>
> ** **
>
> Can you provide a little background into this problem?  Also, I was
> wondering if this fix might cause problems for people who were successfully
> using older versions.****
>
> ** **
>
> On the second item, we are looking at reworking some of our TPL support
> and that might make it cleaner to add support for looking in other
> directories on a TPL by TPL basis.****
>
> ** **
>
> Thanks****
>
> ** **
>
> Jim****
>
> ** **
>
> *From:* trilinos-users-bounces at software.sandia.gov [mailto:
> trilinos-users-bounces at software.sandia.gov] *On Behalf Of *Simone Pezzuto
> *Sent:* Thursday, August 02, 2012 3:06 AM
> *To:* Trilinos-Users at software.sandia.gov; Heroux, Michael A
> *Subject:* Re: [Trilinos-Users] [EXTERNAL] EpetraExt HDF5 and UMFPACK TPL*
> ***
>
> ** **
>
> Dear all,
>
>                    the problem is still present in version 10.12.1, so
> this means that EpetraExt cannot be compiled on Ubuntu (and many others).
>
> So, the patch is still valid.****
>
> --- a/packages/epetraext/src/inout/EpetraExt_HDF5.h****
>
> +++ b/packages/epetraext/src/inout/EpetraExt_HDF5.h****
>
> @@ -45,6 +45,10 @@****
>
>  #include "EpetraExt_ConfigDefs.h"****
>
>  #ifdef HAVE_EPETRAEXT_HDF5****
>
> ** **
>
> +#define H5Gopen_vers 2****
>
> +#define H5Dopen_vers 2****
>
> +#define H5Gcreate_vers 2****
>
> +#define H5Dcreate_vers 2****
>
>  #include <string>****
>
>  #include "hdf5.h"****
>
>  class Epetra_Map;****
>
>
> Best!
>  Simone****
>
> 2011/11/22 Heroux, Michael A <maherou at sandia.gov>****
>
> Thank you Simone.****
>
> ** **
>
> Mike****
>
> ** **
>
> *From: *Simone Pezzuto <junki.gnu at gmail.com>
> *Date: *Mon, 21 Nov 2011 13:25:36 -0800
> *To: *<Trilinos-Users at software.sandia.gov>
> *Subject: *[EXTERNAL] [Trilinos-Users] EpetraExt HDF5 and UMFPACK TPL****
>
> ** **
>
> Hi all,
>                       there's a bug in
> packages/epetraext/src/inout/EpetraExt_HDF5.cpp,
> because it doesn't check for HDF5 API v1.6 or v1.8. As suggested by
> hdfgroup,
> it's enough adding
>
> #define H5Gopen_vers 2
> #define H5Dopen_vers 2
> #define H5Gcreate_vers 2
> #define H5Dcreate_vers 2
>
> somewhere in the header file. This prevent any doubt.
>
> Second thing: cmake build system is not able to find Umfpack headers,
> if they are installed in /usr/include/suitesparse instead of /usr/include.
> I know that is possible to set by hand the correct path, but it seems
> that the first option is the most common one (ubuntu for instance).
>
> Best!
>  Simone****
>
> _______________________________________________ Trilinos-Users mailing
> list Trilinos-Users at software.sandia.gov
> http://software.sandia.gov/mailman/listinfo/trilinos-users ****
>
> ** **
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://software.sandia.gov/pipermail/trilinos-users/attachments/20120803/c19b05fa/attachment.html 


More information about the Trilinos-Users mailing list