Russian Qt Forum

Qt => Вопросы новичков => Тема начата: demaker от Ноябрь 27, 2014, 15:07



Название: chai-библиотека
Отправлено: demaker от Ноябрь 27, 2014, 15:07
Пытаюсь подключить либу для обмена по CAN.
Есть либы  chai.dll chai.lib , а также есть инклюдник chai.h

Но не могу понять как подключить
Библиотека собиралась не на Qt

Скажите как можно подключить обычную либу???


Название: Re: chai-библиотека
Отправлено: Kurles от Ноябрь 27, 2014, 15:28
*.pro:
Код:
INCLUDEPATH += /path/to/chai_h
LIBS += -L/path/to/chai_lib -lchai

ну и длл в рядом с exe или в любую директорию, что в %PATH% прописана


Название: Re: chai-библиотека
Отправлено: demaker от Декабрь 01, 2014, 13:14
Прописал путь к либе.

Но при компиляции выдается ошибка вот скрин.
Некоторые понятно, что #define надо переопределить, но 121 строка вообще не могу понять в чем дело???


Название: Re: chai-библиотека
Отправлено: demaker от Декабрь 01, 2014, 15:54
Понял оказывается у меня имя дефайна совпадала с именем переменной в winsock2.h
типа
Код:

#define h_name 10;



//winsock2.h
...

char *h_name;

всем спсб


Название: Re: chai-библиотека
Отправлено: demaker от Декабрь 01, 2014, 17:19
Нет не получилось

Пытаюсь использовать встроенную функцию библиотеки <chain.h>
Код:
CiInit()

в main()
Код
C++ (Qt)
int main(int argc, char *argv[])
{
 
...
CiInit(); //???????????????????
}
 
но нет к сожалению
выдается ошибка

Код:
g++ -mthreads -Wl,-subsystem,windows -o debug\BFS.exe object_script.BFS.Debug  -L"c:\QtSDK\Desktop\Qt\4.8.1\mingw\lib" -lmingw32 -lqtmaind -LC:\Qt\qwt-6.1.0\lib -lqwtd -LC:/Qt/qtserialport-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK_________/src/serialport/debug -lQtSerialPortd -LC:/Qt/CHAI-2.10.4/lib/chai.lib -lQtGuid4 -lQtCored4 
mingw32-make.exe[1]: Leaving directory `C:/Qt/BFS'
./debug\main.o: In function `Z5qMainiPPc':
C:\Qt\BFS/main.cpp:47: undefined reference to `_imp__CiInit'

??? ??? ???


Название: Re: chai-библиотека
Отправлено: Kurles от Декабрь 01, 2014, 18:50
Нет не получилось

но нет к сожалению
выдается ошибка

??? ??? ???
Если библиотека сишная, а не полюсовая, попробуй инклюды примерно так прописать:
Код
C++ (Qt)
#ifdef __cplusplus
extern "C" {
#endif
 
#include <chain.h>
 
#ifdef __cplusplus
}
#endif


Название: Re: chai-библиотека
Отправлено: demaker от Декабрь 02, 2014, 11:42
Спсб