Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: deaks от Сентябрь 27, 2010, 13:36



Название: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 13:36
По инструкции http://www.prog.org.ru/topic_8259_0.html переделывал библиотеку под компиляцию в mingw.
При попытке компиляции выдает ошибку -

[Makefile] Error 2

как это понимать?


Название: Re: Компиляция динамической библиотеки
Отправлено: m_ax от Сентябрь 27, 2010, 13:50
Цитировать
По инструкции http://www.prog.org.ru/topic_8259_0.html переделывал библиотеку под компиляцию в mingw.
При попытке компиляции выдает ошибку -

[Makefile] Error 2

как это понимать?
Попробуйте заменить эту строчку
Код
C++ (Qt)
LIBS += -L../../lib -ldlabel
 
на эту
Код
C++ (Qt)
LIBS += -L../../lib -ldlabel1
 


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 13:57
да не, я ведь собираю библиотеку, а не приложение с использованием библиотеки.


Название: Re: Компиляция динамической библиотеки
Отправлено: crossly от Сентябрь 27, 2010, 14:32
так покажи весь вывод...


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 14:37
выкладываю настройки проекта библиотеки

Код:
PROJECTNAME = XmlQtWrapper

QT += xml

TEMPLATE = lib
CONFIG += shared

DEFINES += XMLQTWRAPPER_LIB
SOURCES +=  XmlQtWrapper.cpp     \
            XMLAttributes.cpp       \
            XMLFile.cpp             \
            XMLNode.cpp
HEADERS +=  defines.h               \
            XMLAttributes.h         \
            XMLFile.h               \
            XMLNode.h               \
            XmlQtWrapper/XmlQtWrapper.h

TARGET = XmlQtWrapper
DLLDESTDIR = ../../bin
DESTDIR = ../../lib


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 16:10
библиотеку собрал, подключаю к проекту, но выдает досадную ошибку -
collect2: ld returned 1 exit status

Так подключаю библиотеку
Код:
TARGET = XMLGenerator
CONFIG   += console
CONFIG   -= app_bundle
DEPENDPATH += xmlqtwrapper/
INCLUDEPATH += xmlqtwrapper/
LIBS += -L xmlqtwrapper/


Название: Re: Компиляция динамической библиотеки
Отправлено: crossly от Сентябрь 27, 2010, 16:27
и что по вашему это значит LIBS += -L xmlqtwrapper/ ??


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 16:30
подключение директории с библиотеками
в примере было ../../libs


Название: Re: Компиляция динамической библиотеки
Отправлено: crossly от Сентябрь 27, 2010, 16:38
а какую библиотеку подключать он значит сам угадать должен ??:)


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 16:45
я ставлю такой вариант - LIBS += -L xmlqtwrapper/XmlQtWrapper.dll

ошибка та же


Название: Re: Компиляция динамической библиотеки
Отправлено: Blackwanderer от Сентябрь 27, 2010, 17:02
я ставлю такой вариант - LIBS += -L xmlqtwrapper/XmlQtWrapper.dll
Нужно указывать не *.dll, а *.a (для MSVC *.lib) файл


Название: Re: Компиляция динамической библиотеки
Отправлено: deaks от Сентябрь 27, 2010, 17:06
все та же ошибка(


Название: Re: Компиляция динамической библиотеки
Отправлено: Blackwanderer от Сентябрь 27, 2010, 17:29
все та же ошибка(
Тогда покажите полный вывод компилятора.


Название: Re: Компиляция динамической библиотеки
Отправлено: m_ax от Сентябрь 27, 2010, 17:48
Цитировать
LIBS += -L xmlqtwrapper/
Это не правильно. Надо писать
LIBS += -Llib_path -lxmlqtwrapper
где lib_path - путь к либе


Название: Re: Компиляция динамической библиотеки
Отправлено: crossly от Сентябрь 27, 2010, 18:12
надеялся автор сам дойдет... :)