HDF5 dilemma

View: New views
4 Messages — Rating Filter:   Alert me  

HDF5 dilemma

by Darren Weber-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


I've got a hdf5 dilemma ;-)

$ port installed hdf5*
The following ports are currently installed:
  hdf5 @1.6.9_0+threadsafe (active)
  hdf5-18 @1.8.3_0
  hdf5-18 @1.8.3_1

$ sudo port activate hdf5-18 @1.8.3_1
--->  Activating hdf5-18 @1.8.3_1
Error: port activate failed: Image error: /opt/local/bin/gif2h5 is being used by the active hdf5 port.  Please deactivate this port first, or use 'port -f activate hdf5-18' to force the activation.

The hdf5 and hdf5-18 ports are behaving like separate ports, up to the point of activation conflicts.  There are two maintainers for these ports (in the CC list of this email); can we get together on this and work out the activation conflict?

Is it possible to have multiple version specific libs/bins installed?  Is it as simple as providing some version specific file-name mangles (with symlinks and maybe a hdf5_select utility like the gcc_select or python_select utility)?

A quick search on the user email list brings up a number of ports that depend on hdf5 with dependency build issues.

What is the current status of play on hdf5 and what is the recommended version to have installed?

Take care,
Darren


_______________________________________________
macports-users mailing list
macports-users@...
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Re: HDF5 dilemma

by Darren Weber-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Fri, Nov 6, 2009 at 3:34 PM, Darren Weber <dweber@...> wrote:

I've got a hdf5 dilemma ;-)

$ port installed hdf5*
The following ports are currently installed:
  hdf5 @1.6.9_0+threadsafe (active)
  hdf5-18 @1.8.3_0
  hdf5-18 @1.8.3_1

$ sudo port activate hdf5-18 @1.8.3_1
--->  Activating hdf5-18 @1.8.3_1
Error: port activate failed: Image error: /opt/local/bin/gif2h5 is being used by the active hdf5 port.  Please deactivate this port first, or use 'port -f activate hdf5-18' to force the activation.

The hdf5 and hdf5-18 ports are behaving like separate ports, up to the point of activation conflicts.  There are two maintainers for these ports (in the CC list of this email); can we get together on this and work out the activation conflict?

Is it possible to have multiple version specific libs/bins installed?  Is it as simple as providing some version specific file-name mangles (with symlinks and maybe a hdf5_select utility like the gcc_select or python_select utility)?

A quick search on the user email list brings up a number of ports that depend on hdf5 with dependency build issues.

What is the current status of play on hdf5 and what is the recommended version to have installed?

Take care,
Darren



PS,

$ for f in `find macports.svn/dports -name Portfile`; do grep -H "hdf5" $f; done
macports.svn/dports/math/gnudatalanguage/Portfile:                            port:hdf5-18 \
macports.svn/dports/math/gnudatalanguage/Portfile:       reinplace "s|-L\$with_hdf5/lib/hdf -L\$with_hdf5/lib/hdf5||" \
macports.svn/dports/math/gnudatalanguage/Portfile:       reinplace "s|-I\$with_hdf5/include/hdf -I\$with_hdf5/include/hdf5||" \
macports.svn/dports/math/gnudatalanguage/Portfile:                            --with-hdf5=${prefix} \
macports.svn/dports/math/octave/Portfile:                    port:hdf5-18 \
macports.svn/dports/math/octave/Portfile:                    --with-hdf5 \
macports.svn/dports/math/petsc/Portfile:variant hdf5 description {build with support for HDF5 file format} {
macports.svn/dports/math/petsc/Portfile:    configure.args-append   --with-hdf5=1 --with-hdf5-dir=${prefix} \
macports.svn/dports/math/petsc/Portfile:    depends_lib-append    port:hdf5-18
macports.svn/dports/python/py-tables/Portfile:depends_lib-append    port:hdf5 port:py-numpy port:bzip2
macports.svn/dports/python/py-tables/Portfile:                --hdf5=${prefix}
macports.svn/dports/python/py-tables/Portfile:destroot.args    --hdf5=${prefix}
macports.svn/dports/python/py25-h5py/Portfile:configure.args      --api=18 --hdf5=${prefix}
macports.svn/dports/python/py25-h5py/Portfile:depends_lib-append  port:py25-numpy port:hdf5-18
macports.svn/dports/python/py25-tables/Portfile:depends_lib-append port:hdf5-18 \
macports.svn/dports/python/py25-tables/Portfile:                   --hdf5=${prefix} \
macports.svn/dports/python/py25-tables/Portfile:destroot.args      --hdf5=${prefix} \
macports.svn/dports/python/py26-h5py/Portfile:configure.args      --api=18 --hdf5=${prefix}
macports.svn/dports/python/py26-h5py/Portfile:depends_lib-append  port:py26-numpy port:hdf5-18
macports.svn/dports/python/py26-tables/Portfile:depends_lib-append port:hdf5-18 \
macports.svn/dports/python/py26-tables/Portfile:                   --hdf5=${prefix} \
macports.svn/dports/python/py26-tables/Portfile:destroot.args      --hdf5=${prefix} \
macports.svn/dports/science/cdo/Portfile:    depends_lib-append      port:hdf5-18
macports.svn/dports/science/cdo/Portfile:    configure.args-append   --with-hdf5=${prefix} \
macports.svn/dports/science/gdal/Portfile:                --without-ogdi --without-fme --without-hdf4 --without-hdf5 \
macports.svn/dports/science/gdal/Portfile:variant hdf5 description {Enable HDF5 file format} {
macports.svn/dports/science/gdal/Portfile:    depends_lib-append        port:hdf5
macports.svn/dports/science/gdal/Portfile:    configure.args-delete    --without-hdf5
macports.svn/dports/science/gdal/Portfile:    configure.args-append    --with-hdf5=${prefix}
macports.svn/dports/science/h4h5tools/Portfile:depends_lib-append    port:hdf5 \
macports.svn/dports/science/hdf5/Portfile:name                hdf5
macports.svn/dports/science/hdf5/Portfile:                    ftp://ftp.hdfgroup.org/HDF5/prev-releases/hdf5-${version}/src/
macports.svn/dports/science/hdf5-18/Portfile:set realname        hdf5
macports.svn/dports/science/hdf5-18/Portfile:                    ftp://ftp.hdfgroup.org/HDF5/prev-releases/hdf5-${version}/src/
macports.svn/dports/science/nco/Portfile:   depends_lib-append       port:hdf5-18 \
macports.svn/dports/science/netcdf/Portfile:variant netcdf4 description {compile with hdf5} {
macports.svn/dports/science/netcdf/Portfile:    configure.env-append    LDFLAGS=-L${prefix}/lib LIBS="-lhdf5 -lhdf5_hl"
macports.svn/dports/science/netcdf/Portfile:                            --with-hdf5=${prefix} \
macports.svn/dports/science/netcdf/Portfile:                            port:hdf5-18
macports.svn/dports/science/vis5d/Portfile:#    reinplace "s|-lnetcdf \$V5D_LIBS_AUX|-lnetcdf -lhdf5_hl -lhdf5 -lz -lcurl \$V5D_LIBS_AUX|" \
macports.svn/dports/science/wgrib2/Portfile:                           -lgrib2c -ljasper -lnetcdf -lhdf5_hl -lhdf5 -lpng -lz\" "
macports.svn/dports/science/wgrib2/Portfile:    depends_lib-append  port:hdf5-18




_______________________________________________
macports-users mailing list
macports-users@...
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Re: HDF5 dilemma

by Ryan Schmidt-24 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Nov 6, 2009, at 17:34, Darren Weber wrote:

> $ sudo port activate hdf5-18 @1.8.3_1
> --->  Activating hdf5-18 @1.8.3_1
> Error: port activate failed: Image error: /opt/local/bin/gif2h5 is  
> being used by the active hdf5 port.  Please deactivate this port  
> first, or use 'port -f activate hdf5-18' to force the activation.
>
> The hdf5 and hdf5-18 ports are behaving like separate ports, up to  
> the point of activation conflicts.  There are two maintainers for  
> these ports (in the CC list of this email); can we get together on  
> this and work out the activation conflict?

They are separate ports, but appear to conflict. If the conflict is  
intentional, both ports should use the new "conflicts" keyword  
available as of MacPorts 1.8.0. If the conflict is not intentional,  
and it should be possible to install both ports simultaneously, then  
the conflict should be resolved by these two maintainers so that the  
two ports do not attempt to both install the same file(s).



_______________________________________________
macports-users mailing list
macports-users@...
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Parent Message unknown Re: HDF5 dilemma

by Jochen Küpper-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

while I am still marked as maintainer of hdf-16, I am actually using hdf-18 exclusively...

On 09.11.2009, at 00:14, Mark Moll wrote:

HDF5 1.6.10 and HDF5 1.8.4 are currently in prerelease. HDF5 1.6.10 is the last release of the 1.6.x series. HDF5 1.8.x can also be compiled in 1.6.x compatibility mode, but this shouldn’t be done by default. I think it’s hard make a case for the hdf5_select approach you suggest. First, there’s only 2 or 3 ports that need hdf5 1.6 (I think). Second, with gcc and python there really are many versions simultaneously in use. The cost of switching versions is significant with gcc and python and it makes sense to support multiple versions.

I think the easiest solution would be to mark the two ports conflicting in the Portfile (as pointed out by Ryan).

If there is considerable interest in having both ports around and active at the same time, then we should provide a hdf5_select…
I believe there is still considerable amounts of software around that relies on hdf5-1.6, isn't it? Most of it expects the headers directly in C_INCLUDE_PTH (or alike).

Since I am the maintainer of the hdf5-18 port I might be somewhat biased, but the least bad solution might be to have the hdf5 port install its files in ${prefix}/lib/hdf5-16/.

And the equivalent for hdf5-18, and then a hdf5_select that symlinks one of the two to $prefix/include and such…
Versioned libraries could always go to ${prefix}/lib, so selecting is compile time, but using is always possible…

Sorry, I don't have time right now to do any of this (besides the possible conflict statement), but feel free to change the Portfile appropriately or take over maintainership altogether.

On Nov 6, 2009, at 5:34 PM, Darren Weber wrote:


I've got a hdf5 dilemma ;-)

$ port installed hdf5*
The following ports are currently installed:
 hdf5 @1.6.9_0+threadsafe (active)
 hdf5-18 @1.8.3_0
 hdf5-18 @1.8.3_1

$ sudo port activate hdf5-18 @1.8.3_1
--->  Activating hdf5-18 @1.8.3_1
Error: port activate failed: Image error: /opt/local/bin/gif2h5 is being used by the active hdf5 port.  Please deactivate this port first, or use 'port -f activate hdf5-18' to force the activation.

The hdf5 and hdf5-18 ports are behaving like separate ports, up to the point of activation conflicts.  There are two maintainers for these ports (in the CC list of this email); can we get together on this and work out the activation conflict?

Is it possible to have multiple version specific libs/bins installed?  Is it as simple as providing some version specific file-name mangles (with symlinks and maybe a hdf5_select utility like the gcc_select or python_select utility)?

A quick search on the user email list brings up a number of ports that depend on hdf5 with dependency build issues.

What is the current status of play on hdf5 and what is the recommended version to have installed?



Greetings,
Jochen
-- 
Einigkeit und Recht und Freiheit                http://www.Jochen-Kuepper.de
    Liberté, Égalité, Fraternité                GnuPG key: CC1B0B4D
        Sex, drugs and rock-n-roll



_______________________________________________
macports-users mailing list
macports-users@...
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users