crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Подключение библиотеки crashrpt к Qt5.4.0(VS 2010)
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Trisch Дата 19.2.2015, 15:45
  Да, скорей всего.
После полной пересборки библиотеки и проекта все заработало.
Iron Bug Дата 19.2.2015, 8:48
 
Цитата(Trisch @ 18.2.2015, 15:42) *
Проверил при помощи depends файлы .h и .lib

Выдало такую ошибку:
Error: At least one file was not a 32-bit or 64-bit Windows module.

да, она не жрёт lib-файлы. только dll-ки. попробуй так:
Цитата
dumpbin.exe -headers foo.lib

я, честно говоря, плохо помню, потому что давно уже не пишу под венду. в общем, тебе нужен инструмент для просмотра экспорта и импорта lib-файлов. там должно быть что-то стандартное, может, есть какие-то утилиты для большего удобства.

я подозреваю, что у тебя каким-то образом получилась несовместимость юникода и не-юникода. одна часть собралась с юникодом, а другая - без него.
Trisch Дата 18.2.2015, 13:42
  Проверил при помощи depends файлы .h и .lib

Выдало такую ошибку:
Error: At least one file was not a 32-bit or 64-bit Windows module.
Iron Bug Дата 18.2.2015, 12:39
  -MT - это статическая линковка стандартных библиотек. -MD - динамическая. но обычно если возникает такой конфликт, то линковщик ругается на то, что некоторые функции определены дважды и это выглядит по-другому.
а тут он не нашёл нужной функции в библиотеках. посмотри каким-нить Depends'ом, что экспортирует библиотека и чего ей не хватает.

и да, -Zc:wchar_t - это не юникод, это просто поддержка wchar_t как нативного типа. а юникод определяется (если правильно помню) определением макроса _UNICODE.
Trisch Дата 18.2.2015, 11:43
  А может это быть из за того библиотека просит для зборки проекта, такие параметры как -MT -DEBUG
А проект соберается примерно с такими параметрами:
cl -c -nologo -Zm200 -Zc:wchar_t -O2 -MD -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DNDEBUG


хотя я прописал в .pro
QMAKE_CFLAGS_RELEASE += -O2 -MT -DEBUG
Trisch Дата 18.2.2015, 10:24
 
Цитата(Iron Bug @ 18.2.2015, 9:45) *
а у тебя кодировка юникодовская? судя по названию, эта функция требует юникод.
ещё битность можешь проверить. иногда не линкуется из-за разных настроек битности.


Да, уникодная, UTF-8.

Юитность это 32, 64. Ну я библиотеку пересобирал тем же компилятором который использует Qt, думаю тут тоже все норм.
Iron Bug Дата 18.2.2015, 9:45
  а у тебя кодировка юникодовская? судя по названию, эта функция требует юникод.
ещё битность можешь проверить. иногда не линкуется из-за разных настроек битности.
Trisch Дата 17.2.2015, 18:30
  Как подключить библиотеку crashrpt к Qt5.4.0(VS 2010)?

Я пытался подключить библиотеку примерно таким образом:
Цитата
LIBS += -L"C:/путь/CrashRpt/lib"
LIBS += CrashRpt1402.lib CrashRptProbe1402.lib


Но в итоге получаю примерно такие ошибки:

Цитата
main.obj:-1: error: LNK2019: unresolved external symbol _crInstallW@4 referenced in function _main
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.7.2025, 8:29