Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Xerces не хочет сдаваться... 
:(
    Опции темы
CyraxZ
Дата 18.12.2006, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 10.12.2006

Репутация: нет
Всего: нет



Уже две недели копаюсь с Xerces'ом. Никак не могу его заюзать...
1. Сначала скачал (http://xml.apache.org/xerces-c/download.cgi) архив с сырцами xerces-c-current.zip из раздела "Current Source Releases of Xerces-C".
Попытался собрать группу проектов .bpg для BCB (как я понимаю, это Borland C++ Builder). Куча ошибок. Попытался собрать проект XercesLib.dll - тоже куча ошибок.
Тем не менее, XercesLib.dll собрал, но предварительно пришлось сделать следующее:
- исключить из файла проекта XercesLib.bpr файлы XTemplateComparator и XObjectComparator
- добавить в проект XercesLib.bpr файл XMLInitializer (т.к. требовался для компиляции другими файлами)
- закомментил строку "#include "winres.h" в файле Version.rc (Файл winres.h компилятор находил. Тем не менее, на строке "#include "winres.h" в файле Version.rc выходила ошибка "[RC Error] Version.rc(10)" - что не нравится компилятору - осталось загадкой...)
Затем полученную dll'ку и lib-файл попытался заюзать. Кинул к своей проге XercesLib.lib и XercesLib.dll, включил в проект XercesLib. (Все нужные хидеры из сырцов подключил.) Компилю, запускаю. Прога выкидывает исключение EAccessViolation "Access Violation at address ... in module 'XERCESLIB.DLL' " на вызове любой функции из dll...
Т.е., возможно, из-за файла Version.rc (инклуд которого я закомментировал) dll'ка скомпилилась или собралась коряво...

Была мысль попробовать собрать в Borland Developer Studio, но, думаю, ситуация не изменится...

2. Затем из тех же сырцов попробовал скомпилить проект для Visual C++ 7.1. Поскольку у меня Visual Studio 2005 (8.0), то компилил и собирал в ней (ну, естественно предварительно файлы были переконвертены в 8-ю версию). Компилю - миллион ошибок в файле Version.rc (причём, только в нём)...

Тоже была мысль попробовать Visual Studio 2003, но по-прежнему считаю, что ситуация не изменится. Этот хренов Version.rc всё портит...

3. С того же сайта из раздела "Current Binary Releases of Xerces-C (32 bit)" скачал архив с бинарниками xerces-c_2_7_0-windows_2000-msvc_60.zip (который Windows 2000 compiled with MSVC 6.0 SP3), т.к. других вариантов (для BCB, MSVC 7.1 и MSVC 8.0 не было).
Там имеются следующие dll'ки:
- xerces-c_2_7.dll
- xerces-c_2_7D.dll
- xerces-depdom_2_7.dll
- xerces-depdom_2_7D.dll
Чем они отличаются - не знаю (последние две, похоже, урезки)
и следующие либы:
- xerces-c_2.lib
- xerces-c_2D.lib
- xerces-depdom_2.lib
- xerces-depdom_2D.lib
(не понятно, куда 7-ку дели...)
Юзаю xerces-c_2_7.dll с xerces-c_2.lib - выходит ошибка:
Xerces-C_2.lib contains invalid OMF record, type 0x%02x (possibly COFF)
Сконвертил () coff2omf.exe'ом в OMF (lib'у). Юзаю. Ошибки линковщика на всех вызовах функций из dll'ки:
Unresolved external вызов_метода_класса referenced from объектник_файла_откуда_вызываются_методы
Попробовал заюзать xerces-c_2_7D.dll и xerces-c_2D.lib, сконвертил - та же картина...

4. Взял сырцы. Попробовал подключить только нужные cpp-ники. Никак, поскольку эти нужные cpp-ники юзают хидеры других cpp-ников - и так в геом. прогрессии... Подключил все cpp-ники. Компилю. Ошибка в некоторых хидерах, что инклудится хидер, которого нет. Проверил - в сырцах его действительно нет... (какой именно - не помню, завтра смогу указать конкретно...)


5. Теперь думаю, чего делать дальше...

Может, кто-нибудь нормально юзал этот Xerces... Как dll'ку с lib-файлом получали, или где доставали ?

Если у кого имеются эти 2 файла (нормальные), просьба кинуть на [email protected]...



PM MAIL   Вверх
bsa
Дата 19.12.2006, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Сделай lib из dll с помощью implib (кажется так зовется). Она входит в поставку BCB. С ней уже проблем быть не должно.
PM   Вверх
Vyacheslav
Дата 21.12.2006, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 9
Всего: 59



- xerces-c_2_7.dll  - релиз-версия
- xerces-c_2_7D.dll - дебаг-версия

xerces-depdom_2.dll - урезанная версия, использующая только DOM-модель






--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0507 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.