Официальный форум СВД Встраиваемые Системы
04 Декабря, 2016, 09:05:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: libxml2 для QNX4  (Прочитано 3619 раз)
Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« : 11 Февраля, 2010, 17:42:54 »

Библиотека libxml2 для QNX4

Libxml2 — программная библиотека синтаксического разбора XML документов. Библиотека написана на языке программирования C. Изначально она была разработана для проекта GNOME, но может быть использована отдельно. Код libXML высокопереносимый, т.к. имеет зависимости только от ANSI C библиотек. Код распространяется под лицензией MIT. Описание в википедии.

Доступна для загрузки libxml2 1.7.6 для QNX4. При работе с последними сборками понадобятся дополнительные библиотеки.

libxml2-2.7.6-qnx4-bin-20131222.tar.gz

Код:
$ cksum libxml2-2.7.6-qnx4-bin-20131222.tar.gz
1192533479 1749889 libxml2-2.7.6-qnx4-bin-20131222.tar.gz

(щёлкните чтобы показать/скрыть)
« Последнее редактирование: 22 Декабря, 2013, 20:36:52 от Олег Большаков » Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #1 : 13 Февраля, 2010, 18:14:39 »

Оказалось, что функция rngTest() содержала ошибку. При сборки теста из репозитория количество ошибок сократилось до 13. Думаю, что и с остальными удастся справиться.
Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #2 : 15 Февраля, 2010, 01:04:19 »

Разобрался с ошибками, связанными с кодировкой EBCDIC. Для этого подготовил библиотеку iconv для QNX4.

Осталось всего три ошибки при прохождении тестов libxml2. Похоже, что ошибки связаны с отсутствием функций isnan() и isinf(). Поразбираюсь в ближайшее время. Новый дистрибутив libxml2 выложу после того, когда станет ясно, как поступать с данными ошибками.
Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #3 : 09 Марта, 2010, 00:02:00 »

Сегодня разобрался с оставшимися тремя ошибками в тестах. Для этого пришлось использовать заголовочный файл math.h и специально подготовленную библиотеку math387r.lib из OpenWatcom.

На днях выложу свежую сборку libxml2.
Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #4 : 09 Марта, 2010, 20:34:33 »

Выложил версию 20100309 (ссылка в первом сообщении). При линковке потребуется доработанная библиотека math387.
Записан

mgb
Пользователь

Сообщений: 15


« Ответ #5 : 10 Марта, 2010, 13:13:24 »

При попытке скачать 20100309 получаю:
File does not exist. Make sure you specified correct file name.
Проверьте, пожалуйста
Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #6 : 10 Марта, 2010, 13:25:59 »

Исправил ссылку.
Записан

LH
Опытный пользователь

Сообщений: 250


« Ответ #7 : 23 Декабря, 2012, 05:25:16 »

Не удается применить libxml2.lib и xml2.lib для чтения xml-файла при компиляции и сборке программы в среде qnx4 с Watcom 10.4 (не в Open Watcom ).

При сборке с xml2.lib, после подключения z.lib и iconv.lib остались не определенными  ф-ции _FDSign() и _FDClass().
При сборке с libxml2.lib не потребовалось подключать z.lib и iconv.lib.

Проблема одна и та же: root->name не указывает на "ltrsrv_config"

Пожалуйста подскажите решение.



Тестовая программа:

#include <string.h>
#include <libxml/parser.h>
#include <libxml/tree.h>

void _FDClass()
{

}

void _FDSign()
{

}


main()
{
    xmlDoc *doc = NULL;
    xmlNode *root = NULL;

    LIBXML_TEST_VERSION

    doc = xmlReadFile("./config.xml", NULL, 0);

    root = xmlDocGetRootElement(doc);

    printf("root name: %s \n", root->name );

}


Файл config.xml

<?xml version="1.0"?>
<ltrsrv_config>
  <log>
    <level> 3 </level>
  </log>
  <crate_ip_entries>
    <ip autocon='1'> 1.1.1.22 </ip>
  </crate_ip_entries>
</ltrsrv_config>
Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #8 : 27 Декабря, 2012, 12:42:15 »

Действительно, проявляется подобная ошибка. Попробуйте указать опцию компилятору -Wc,-ei .
Записан

LH
Опытный пользователь

Сообщений: 250


« Ответ #9 : 29 Декабря, 2012, 14:12:23 »

Спасибо! Ваши рекомендации решили проблему.
Записан
mgb14
Пользователь

Сообщений: 65


« Ответ #10 : 13 Декабря, 2013, 13:01:29 »

Имели проблемы с распаковкой содержимого сжатого zlib 1.2.5 - перешли на текущую zlib 1.2.8 - проблемы c распаковкой ушли. Однако зачем-то в новом zlib изменили структуры и выявилась несовместимость libxml2 представленного в данной ветке с новой библиотекой zlib (получаем SIGSEGV), в итоге приложения использующие xmllib компилируем со старым libz.a. Крайне благодарны автору темы за портирование libxml2 в QNX4 и извиняемся за нахальство Smiley, но нельзя ли собрать libxml2 c zlib 1.2.8 ?   
Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #11 : 13 Декабря, 2013, 15:51:42 »

mgb14, постараюсь сделать, если будет свободное время. Smiley
Записан

Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #12 : 22 Декабря, 2013, 20:39:05 »

Подготовил сборку libxml2 версии 2.7.6 с использованием zlib 1.2.8. Ссылка на скачивание в первом сообщении этой темы.

Не тестировал, об ошибках сообщайте. Smiley
Записан

mgb14
Пользователь

Сообщений: 65


« Ответ #13 : 15 Января, 2014, 16:24:16 »

Здравствуйте, Олег! Спасибо за портацию, извиняюсь за задержку с тестированием. На наших задачах данная версия библиотеки нормально создает XML-файлы, однако при попытки парсить XML-файл - идет SIGSEGV
Записан
Олег Большаков
Администратор
Житель форума

Сообщений: 2931



WWW
« Ответ #14 : 16 Января, 2014, 11:44:33 »

Проверим у себя повнимательнее. Возможно, потребуются дополнительные данные.
Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2016 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 13 Ноября, 2016, 01:36:13