LINUX.ORG.RU

Есть ли аналоги у HDF?

 , ,


1

1

Речь о HDF5. Это гавно спроектировано так, что не поддерживает кросс-компиляцию. Собсно вопрос сейчас в том, чтобы:
а) Потратить время и исправить это
б) Найти аналог.

Есть кто в теме?

★★★★★

б) Найти аналог.

Зависит какие данные хранить хочется. У этого формата есть только одна положительная фича, что он читаем всем что шевелится. Из аналогов пробовал только ROOT. Не зашло. В итоге для своей задачи навелосипедил на SQLite где хранил блобы protobuf'a. Сейчас и SQLite выкинул и просто пишу в append-only файл, но у меня задача специфичная.

ebantrop ()

Кажись, сильно зависит от

того, что за данные.

Если 2D - то что угодно. Если 3Д - то всякие там vtk подойдут (или любой формат, который выдает какой-нибудь CFD- & MHD- симулятор). Дальше не знаю :)

sshestov ()

а) Потратить время и исправить это

Осилишь в одиночку? Они даже подробную причину неосиляторства описали: https://support.hdfgroup.org/HDF5/faq/compile.html

А тута https://github.com/HDFGroup/armed-hdf5/wiki есть ссылка https://lists.hdfgroup.org/pipermail/hdf-forum_lists.hdfgroup.org/2013-Septem... на историю успеха в обход. 4 года как, а авторы hdf до сих пор не предложили официальный howto.

gag ★★★★★ ()
Ответ на: комментарий от gag

Осилишь в одиночку? Они даже подробную причину неосиляторства описали: https://support.hdfgroup.org/HDF5/faq/compile.html

Да я видел уже. В каждый тест ещё не вникал, просто как бы неужели это нельзя сделать без запуска скомпилированного кода? Остальные ведь как-то обходятся просто проверкой фич компилера, не?

Как быстрый workaround у меня и была мысль подставить эти файлы перед компиляцией, только я пока на этапе, что нужно cmake сказать, какие фичи доступны. Т.е. там 2 этапа, как я понял. Сначала они запускают тесты на этапе cmake, а потому на этапе make.

UVV ★★★★★ ()
Ответ на: комментарий от UVV

просто как бы неужели это нельзя сделать без запуска скомпилированного кода? Остальные ведь как-то обходятся просто проверкой фич компилера, не?

configure проверяет наличие фич: тест скомпилировался/нет. Похоже, фичи есть, а они хотят узнать их свойства.

Сначала они запускают тесты на этапе cmake, а потому на этапе make.

Не фанат cmake, и там, вроде, можно без него.

Первый шаг - стандарт: или угадать подходящие значения ac_cv_XXX и указать их при configure (тогда тесты не будут запускаться) или запустить configure на target и получить точные значения, которые подставить для кросс-компиляции.

А вот потом начнутся танцы с бубном:

The second (dealbreaking?) problem is the generation of H5Tinit.c and, to a lesser extent, H5libsettings.c which are actually generated within 'make', not by configure.

gag ★★★★★ ()