h5mma::mlink: Error from MathLink executable: Unsupported datatype.

Issue #9 resolved
Hananel Hazan created an issue

Hello,

I am trying to open a H5 file to load the dataset using the command:

ImportHDF5["/home/hh/Downloads/data.h5", {"Datasets", "/Trial1/Synchronous Data/Channel Data"}]

I get an error "h5mma::mlink: Error from MathLink executable: Unsupported datatype."

Attach is the file that I am trying to open.

Comments (23)

  1. Barry Wardell

    I think the problem is that the data is array-of-double type. h5mma doesn't currently support this type of data. I think it wouldn't be too difficult to add support for this type of data.

  2. Barry Wardell

    I have committed a change [commit d21127c53c3c15d4989e008632a9f8cd1dc4d40a] which adds support for this type of data. With this version I am able to read your dataset without any problems.

    Can you confirm if this works for you (if you would like a compiled version to test, tell me which operating system you are using and I will provide it)?

  3. Hananel Hazan reporter

    Great! its seems to work on Ubuntu..

    I trying to compile it for MacOS X but with no luck... I am using brew to install hdf5 and szip and I cannot compile h5mma

    Can you attach the compiled version to test it on the Mac?

  4. Hananel Hazan reporter

    I am sorry, when I run it in Matmatica I get

    In[1]:= << h5mma'
    During evaluation of In[1]:= $CharacterEncoding::utf8 :  "The byte sequence {207, 250} could not be \
    interpreted as a character in the UTF-8 character encoding. ‘™˜ButtonBox["",
    Appearance->{Automatic, None},
    BaseStyle->"Link",
    ButtonData:>"paclet:ref/$CharacterEncoding",
    ButtonNote->"$CharacterEncoding::utf8"]"
    During evaluation of In[1]:= $CharacterEncoding::utf8 :  "The byte sequence {207, 250} could not be \
    interpreted as a character in the UTF-8 character encoding. ‘™˜ButtonBox["",
    Appearance->{Automatic, None},
    BaseStyle->"Link",
    ButtonData:>"paclet:ref/$CharacterEncoding",
    ButtonNote->"$CharacterEncoding::utf8"]"
    During evaluation of In[1]:= $CharacterEncoding::utf8 :  "The byte sequence {207, 250} could not be \
    interpreted as a character in the UTF-8 character encoding. ‘™˜ButtonBox["",
    Appearance->{Automatic, None},
    BaseStyle->"Link",
    ButtonData:>"paclet:ref/$CharacterEncoding",
    ButtonNote->"$CharacterEncoding::utf8"]"
    During evaluation of In[1]:= General::stop :  "Further output of ‘™˜
    StyleBox[
    RowBox[{\"$CharacterEncoding\", \"::\", \"utf8\"}], \"MessageName\"] will \
    be suppressed during this calculation. ‘™˜ButtonBox["",
    Appearance->{Automatic, None},
    BaseStyle->"Link",
    ButtonData:>"paclet:ref/message/General/stop",
    ButtonNote->"General::stop"]"
    During evaluation of In[1]:=
    Syntax::sntx: Invalid syntax in or before "к:07    ^" (line 1 of "h5mma").
    Out[1]= Derivative[1][Null]
    

    When I try to compile I got the error:

    $ make
    Build id: May 18, 2014
    Compiling h5mma
    Undefined symbols for architecture x86_64:
      "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
          ReadDatasetDimensions(char const*) in h5mma.o
          ReadDatasets(char const*) in h5mma.o
          _put_dataset_attribute in h5mma.o
          std::__1::vector<int, std::__1::allocator<int> >::__append(unsigned long) in h5mma.o
          std::__1::vector<long, std::__1::allocator<long> >::__append(unsigned long) in h5mma.o
          void std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::__push_back_slow_path<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
      "std::__1::__basic_string_common<true>::__throw_length_error() const", referenced from:
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::str() const in h5mma.o
      "std::__1::locale::use_facet(std::__1::locale::id&) const", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::ios_base::getloc() const", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__init(char const*, unsigned long)", referenced from:
          GetDatasetNames(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >*) in h5mma.o
          ReadDatasetDimensions(char const*) in h5mma.o
          ReadDatasets(char const*) in h5mma.o
          ReadDatasetAttributes(char const*) in h5mma.o
          _put_dataset_attribute in h5mma.o
          ReadDatasetNames(char const*) in h5mma.o
          _put_dataset_name in h5mma.o
          ...
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__init(char const*, unsigned long, unsigned long)", referenced from:
          _put_dataset_name in h5mma.o
          _put_dataset_name_fast in h5mma.o
          std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(char const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__init(unsigned long, char)", referenced from:
          std::__1::ostreambuf_iterator<char, std::__1::char_traits<char> > std::__1::__pad_and_output<char, std::__1::char_traits<char> >(std::__1::ostreambuf_iterator<char, std::__1::char_traits<char> >, char const*, char const*, char const*, std::__1::ios_base&, char) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::append(char const*, unsigned long)", referenced from:
          _put_dataset_name in h5mma.o
          _put_dataset_name_fast in h5mma.o
          std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(char const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::resize(unsigned long, char)", referenced from:
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::overflow(int) in h5mma.o
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::str(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::push_back(char)", referenced from:
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::overflow(int) in h5mma.o
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
          GetDatasetNames(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >*) in h5mma.o
          ReadDatasetDimensions(char const*) in h5mma.o
          ReadDatasets(char const*) in h5mma.o
          ReadDatasetAttributes(char const*) in h5mma.o
          _put_dataset_name in h5mma.o
          _put_dataset_name_fast in h5mma.o
          void std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::__push_back_slow_path<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
          ...
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()", referenced from:
          GetDatasetNames(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >*) in h5mma.o
          ReadDatasetDimensions(char const*) in h5mma.o
          ReadDatasets(char const*) in h5mma.o
          ReadDatasetAttributes(char const*) in h5mma.o
          _put_dataset_attribute in h5mma.o
          ReadDatasetNames(char const*) in h5mma.o
          _put_dataset_name in h5mma.o
          ...
      "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::operator=(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::str(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in h5mma.o
      "std::__1::basic_istream<char, std::__1::char_traits<char> >::~basic_istream()", referenced from:
          construction vtable for std::__1::basic_istream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_istream<char, std::__1::char_traits<char> >::~basic_istream()", referenced from:
          construction vtable for std::__1::basic_istream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::sentry::sentry(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::sentry::~sentry()", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::~basic_ostream()", referenced from:
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::~basic_ostream()", referenced from:
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::~basic_ostream()", referenced from:
          _put_dataset_name_fast in h5mma.o
          std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_ostringstream() in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::operator<<(double)", referenced from:
          _put_dataset_name_fast in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::operator<<(int)", referenced from:
          ReadDatasets(char const*) in h5mma.o
      "std::__1::basic_ostream<char, std::__1::char_traits<char> >::operator<<(unsigned long)", referenced from:
          ReadDatasets(char const*) in h5mma.o
      "std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          ReadDatasets(char const*) in h5mma.o
          std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::sync()", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::imbue(std::__1::locale const&)", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::uflow()", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::setbuf(char*, long)", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::xsgetn(char*, long)", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::xsputn(char const*, long)", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::showmanyc()", referenced from:
          vtable for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::basic_streambuf()", referenced from:
          ReadDatasets(char const*) in h5mma.o
          _put_dataset_name_fast in h5mma.o
      "std::__1::basic_streambuf<char, std::__1::char_traits<char> >::~basic_streambuf()", referenced from:
          ReadDatasets(char const*) in h5mma.o
          _put_dataset_name_fast in h5mma.o
          std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_ostringstream() in h5mma.o
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringbuf() in h5mma.o
          std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringbuf() in h5mma.o
          std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
      "std::__1::ctype<char>::id", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::locale::~locale()", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::ios_base::__set_badbit_and_consider_rethrow()", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::ios_base::init(void*)", referenced from:
          ReadDatasets(char const*) in h5mma.o
          _put_dataset_name_fast in h5mma.o
      "std::__1::ios_base::clear(unsigned int)", referenced from:
          std::__1::basic_ostream<char, std::__1::char_traits<char> >& std::__1::operator<<<std::__1::char_traits<char> >(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, char const*) in h5mma.o
      "std::__1::basic_ios<char, std::__1::char_traits<char> >::~basic_ios()", referenced from:
          ReadDatasets(char const*) in h5mma.o
          _put_dataset_name_fast in h5mma.o
          std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
          std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_ostringstream() in h5mma.o
          std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
          non-virtual thunk to std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
          non-virtual thunk to std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_stringstream() in h5mma.o
          ...
      "typeinfo for std::__1::basic_istream<char, std::__1::char_traits<char> >", referenced from:
          construction vtable for std::__1::basic_istream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "typeinfo for std::__1::basic_ostream<char, std::__1::char_traits<char> >", referenced from:
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          typeinfo for std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "typeinfo for std::__1::basic_iostream<char, std::__1::char_traits<char> >", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          typeinfo for std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "typeinfo for std::__1::basic_streambuf<char, std::__1::char_traits<char> >", referenced from:
          typeinfo for std::__1::basic_stringbuf<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_istream<char, std::__1::char_traits<char> >::~basic_istream()", referenced from:
          construction vtable for std::__1::basic_istream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_istream<char, std::__1::char_traits<char> >::~basic_istream()", referenced from:
          construction vtable for std::__1::basic_istream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_ostream<char, std::__1::char_traits<char> >::~basic_ostream()", referenced from:
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_ostream<char, std::__1::char_traits<char> >::~basic_ostream()", referenced from:
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
          construction vtable for std::__1::basic_ostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
      "non-virtual thunk to std::__1::basic_iostream<char, std::__1::char_traits<char> >::~basic_iostream()", referenced from:
          construction vtable for std::__1::basic_iostream<char, std::__1::char_traits<char> >-in-std::__1::basic_stringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> > in h5mma.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    make: *** [h5mma] Error 1
    
  5. Barry Wardell

    The problem with compiling appears to be a new problem since OS X Mavericks was released. I have just committed a change to the makefile which fixes it for me.

    As for the binary I uploaded, I think the problem was that I had compiled and linked with a MacPorts version of gcc which you probably don't have installed. I will upload an updated binary which doesn't rely on MacPorts.

  6. Hananel Hazan reporter

    Yap Its work! Thanks!!

    now its not support something that was working before, try:

    ImportHDF5["/home/hh/Downloads/data.h5", {"Datasets", "/Trial1/Downsampling Rate"}]
    

    p.s. I will open a new issue about huge size h5 file....

  7. Hananel Hazan reporter
    • changed status to open

    more unsupported datatype:

    ImportHDF5["/home/hh/Downloads/data.h5", {"Datasets", "/Trial1/Parameters/18\ SM4\ :\ EK_mV"}]

    h5mma::mlink: Error from MathLink executable: Unsupported datatype: class 6, size 16.

  8. Barry Wardell

    I have added support for compound datasets and checked that all datasets in the example file can now be read.

  9. Hananel Hazan reporter
    • changed status to open

    Hi

    I have another issue with HDF5 file, this time there is 2 values in the array and I got this error:

    In[19]:= ImportHDF5["/home/hh/Downloads/curr1.h5",{"Datasets",{"/Trial1/Synchronous Data/Channel Data"}}] During evaluation of In[19]:= h5mma::mlink: Error from MathLink executable: Unsupported datatype: Array, class 1, size 8. Out[19]= $Failed

    here is the link for the file https://copy.com/ghJVx8BFczp4mSKD

    if you want to get 20Gb, register from this link: http://goo.gl/h9imj

  10. Barry Wardell

    The linked file doesn't appear to contain any HDF5 file. Having said that, it was clear from looking at the code that there was an error in the array reading implementation that would have caused your problem. I have committed a fix for this. I will attach an updated OS X binary for you to test.

  11. Barry Wardell

    I still don't see any HDF5 file in that one either.

    You should be able to compile the latest git master branch as that already has the fix applied.

  12. Hananel Hazan reporter

    I am sorry, something went crazy with copy past in Ubuntu here is the correct link https://copy.com/jAP0rWExRf8e

    I tried to compile h5mma, and that what I got:

    $ make Compiling h5mma h5mma.cc: In function ‘void ReadDatasets(const char)’: h5mma.cc:296: warning: comparison between signed and unsigned integer expressions h5mma.cc:530: error: ‘free’ was not declared in this scope make: ** [h5mma] Error 1

    thanks

  13. Barry Wardell

    I have successfully tested that the latest master branch can load your test file. I've also committed a change which will hopefully fix the compilation issue.

  14. Youssef Hayek

    Hi Barry,

    I have the same problem with the I need a compiled version for win 64 bit. I have the same problem, the data is array-of-double type. thanks in advance youssef

  15. Barry Wardell

    I am planning to create a new release next week. This will include the Windows 64-bit version you've requested and should support array-of-double type data.

  16. Barry Wardell

    For the record, version 1.2.0 which was released 2014-12-16 contains the mentioned improvements.

  17. Log in to comment