Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: РЕШЕНО. Ошибка - undefined reference to `LimeReport::ReportEngine::loadFromFile  (Read 9162 times)

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Всем доброго дня!

LimeReport последней версии с GitHub, компиляция и сборка под Windows и Raspbian без ошибок (debug и release).
Под Windows собственный проект с подключенным LimrReport успешно собирается и работает (debug и release).
Под Raspbian собственный проект с подключенным LimrReport успешно собирается и работает только как gebug-сборка.
При попытке собрать release получаю ошибку
reportform.cpp:(.text+0x228): undefined reference to `LimeReport::ReportEngine::loadFromFile(QString const&, bool)'
Понять, где косяк, не получается. Подскажите, куда смотреть/копать.
« Last Edit: May 22, 2018, 11:26:59 am by Sch »

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Приветствую
А можно глянуть pro file вашей программы? Интересует то место где LimeReport подключается

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Приветствую
А можно глянуть pro file вашей программы? Интересует то место где LimeReport подключается


Здравствуйте, можно конечно.

### LimeReport ###
DEFINES += UseLimeReport
win32 {
  CONFIG(debug, debug | release): LIBS += -L$$PWD/limereport/win32/debug -llimereportd
  CONFIG(debug, debug | release): INCLUDEPATH += $$PWD/limereport/win32/debug/include
  CONFIG(debug, debug | release): DEPENDPATH += $$PWD/limereport/win32/debug/include
  CONFIG(release, debug | release): LIBS += -L$$PWD/limereport/win32/release -llimereport
  CONFIG(release, debug | release): INCLUDEPATH += $$PWD/limereport/win32/release/include
  CONFIG(release, debug | release): DEPENDPATH += $$PWD/limereport/win32/release/include
}
linux {
  CONFIG(debug, debug | release) {
    LIBS += -llimereportd
    INCLUDEPATH += $$PWD/limereport/debug/include
    DEPENDPATH  += $$PWD/limereport/debug/include
  }
  CONFIG(release, debug | release) {
    LIBS += -llimereport
    INCLUDEPATH += $$PWD/limereport/release/include
    DEPENDPATH  += $$PWD/limereport/release/include
  }
}
##################
Под Raspbian библиотеки скопированы в /lib

Subst

  • Sr. Member
  • ****
  • Posts: 450
    • View Profile
Может ошибаюсь, пусть Алекс поправит. Но мне кажется для raspbian условие linux { - будет верным

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Может ошибаюсь, пусть Алекс поправит. Но мне кажется для raspbian условие linux { - будет верным
Файл проекта один - и на Windows (разработка) и на целевую платформу (Raspbian).
Чтобы не путаться при переносе кода.
Ветка linux { } как раз для Raspbian.

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
undefined reference to - как правило это либо не реализован код в классе или заголовок не подходит к бинарнику библиотеки. Если собрать с указанием пути к тому месту где либа собралась не поможет ?
« Last Edit: May 21, 2018, 07:05:12 pm by Arin Alex »

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
undefined reference to - как правило это либо не реализован код в классе или заголовок не подходит к бинарнику библиотеки. Если собрать с указанием пути к тому месту где либа собралась не поможет ?
Пробовал, но еще раз попробую и отпишусь.

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Вы исходники с гита тяните?
Проект с чистого листа собирается или уже собирали а потом обновились?

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Раньше брал с SourceForge, но с этой версией делал только gebug.
Последний раз брал с Гита, всё собиралось в новых папках.
До этого исходная папка LimeReport-1.4.7, сейчас - LimeReport-master.
Собранные библиотеки беру из ~/LimeReport-master/build/5.7.1/linux32/debug/lib и ~/LimeReport-master/build/5.7.1/linux32/release/lib и кидаю в /lib, благо теперь имена библиотек debug и release сборок не совпадают.

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Демки, которые в комплекте к лайму идут, собираются же, как я понимаю, нормально (и debug и release). 
А они точно также цепляются к so.   

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Да, собираются и запускаются, проверял.
Я правда правил файл limereport.pro - добавил строку в начале CONFIG += no_zint.
И такую же строку в common.pri.

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Если демки собираются значит основная прога тянет кривой бинарник.
Дебаг собирается в силу того что либа идет с суффиксом d, а релиз видать тянет старый бинарник 

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Собираю сейчас всё заново. Но это на Raspberry Pi не быстро - по часу примерно на каждую сборку.

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
А LimeReport на нем как работает?  Можно пользовать или тоже медленно?

Sch

  • Newbie
  • *
  • Posts: 12
    • View Profile
Нормально работает, вполне можно использовать. Но у меня отчеты небольшие правда.