Russian Qt Forum
Сентябрь 30, 2024, 06:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3   Вниз
  Печать  
Автор Тема: Qt с поддержкой QTDS  (Прочитано 15216 раз)
Даниил
Гость
« Ответ #15 : Август 25, 2011, 12:44 »

В .pri файле qsql_tds:
Код:
unix|win32-g++*: {
    LIBS *= $$QT_LFLAGS_TDS
    !contains(LIBS, .*sybdb.*):LIBS += -lsybdb
    QMAKE_CXXFLAGS *= $$QT_CFLAGS_TDS
} else:win32-borland {
    LIBS *= $(BCB)/lib/PSDK/NTWDBLIB.LIB
} else {
    LIBS *= -lNTWDBLIB
}
Либу эту запихал уже куда только можно, пробовал путь менять. Пофиг. Все равно таже песня.
Точно файл: libsybdb.lib - это то, что нужно?
« Последнее редактирование: Август 25, 2011, 12:59 от Даниил » Записан
Даниил
Гость
« Ответ #16 : Август 25, 2011, 14:39 »

Чем больше читаю интернета, тем больше понимаю, что у меня чего-то не хватает исходников. А вот где их скачать, вот это вопрос ...
2. Значит нужно саму либу БД скачать и указать ее при компилировании. Посмотри примеры сборки драйверов MySQL и PostgreSQL.
В случаем MySQL и PostgreSQL, программа и исходники находятся в открытом доступе. А в случае Sybase, их нет.
Как тут быть?  Плачущий
Записан
Странник
Гость
« Ответ #17 : Август 25, 2011, 15:45 »

include и lib файлы обычно включаются в поставку сервера, установщик у вас есть? когда компилил QTDS, все необходимые файлы установились вместе с сервером.
Записан
Даниил
Гость
« Ответ #18 : Август 25, 2011, 19:12 »

include и lib файлы обычно включаются в поставку сервера, установщик у вас есть? когда компилил QTDS, все необходимые файлы установились вместе с сервером.
С каким сервером? Sybase? Собственно Sybase сервер уже установлен, при чем давно, и я сильно сомневаюсь, что смогу так нарыть, что-то подобное. Но все же посмотрю. И да - Странник, у тебя скопиленные dll-ки остались: Я могу просто dll-ки скинуть к себе и через config.exe их приклеить?
Записан
Странник
Гость
« Ответ #19 : Август 26, 2011, 09:24 »

dll, к сожалению, не осталось - с sybase уже год как не работаю.
Записан
Даниил
Гость
« Ответ #20 : Август 26, 2011, 09:28 »

Притащили мне дистрибы Sybase - сервер и OpenClient. Щас попробую поставить, покомпилять. Показает язык
Странник, ты когда QTDS собирал, как путь до либ Sybase'овских прописывал?
Записан
Даниил
Гость
« Ответ #21 : Август 26, 2011, 11:31 »

Странник, а ты под какой осью собирал? Lin, Unix? У меня под Win7 сервак ставится что-то даже не хочет.
Записан
Даниил
Гость
« Ответ #22 : Август 26, 2011, 12:25 »

Вернулся к отправной точке. В lib и .h файлах Sybase сервера нет того, на что ругается компилятор:
Код:
In file included from main.cpp:50:
../../../sql/drivers/tds/qsql_tds.h:53:22: sqlfront.h: No such file or
directory
../../../sql/drivers/tds/qsql_tds.h:54:19: sqldb.h: No such file or
directory
In file included from main.cpp:50:
Печаль  Плачущий
Записан
Странник
Гость
« Ответ #23 : Август 26, 2011, 12:52 »

под XP дело было. qmake в INCLUDEPATH и LIBS указал пути к хедерам и либам. а что, нет их ни в сервере, ни в OpenClient?
Записан
Даниил
Гость
« Ответ #24 : Август 26, 2011, 13:00 »

Сейчас другой накатил - в нем нашел.
Т.е. если у меня Sybase установлен в C:\Sybase.
Мне в qmake нужно указывать:
Код:
qmake -o Makefile "INCLUDEPATH=C:/Sybase/OCS-12_5/include/" "LIBS=C:/Sybase/OCS-12_5/lib -lsybdb" tds.pro
Так?  Непонимающий
МЛЯ, там sqlfront.h и sqldb.h нету ... Господи, за что?!
Теперь ругается на то, что не определены типы:
Код:
'SQLCHAR'
'SQLMONEY'
...
Определение данных типов, я увидел в хеадерсе sybdb.h.
Может у меня libsybdb.lib не подключается?! Корректно пишу инструкцию для линковщика?
« Последнее редактирование: Август 26, 2011, 14:13 от Даниил » Записан
Даниил
Гость
« Ответ #25 : Август 29, 2011, 14:37 »

Блин, ну совсем уже упарился. В хеадерсах от sybase (скачивал последнюю версию для девелоперов) хеадерсов sqlfront.h и sqldb.h НЕТУ. Оказалось, что это инструкция для Linux ( Смеющийся ) - поржал и успокоился. НО, либу, которую троли говорят инклудить для виндовз тоже нигде нету! Что это за засада? Я дошел того, что слил коммерческую версию, но и в ней теже пироги - предлагают самому найти и скомпилить драйвер  Плачущий
Записан
Даниил
Гость
« Ответ #26 : Август 30, 2011, 12:20 »

Народ, помогите, чувствую, что уже совсем близок к победе, но опять вывалилась непонятная беда:
На этапе сборки вывалиется куча ошибок
Код:
:undefined reference to 'dbdead'
...
Ругается, на разные типы. Все эти типы определены в одном из хэадеров, подключаемых к проекту. Определены таким образом:
Код
C++ (Qt)
DBBOOL CS_PUBLIC dbdead  PROTOTYPE((
DBPROCESS DBFAR *a
));
 
Почему компилятор ругается?
В аттаче хэадрсы и либы от Open Client Sybase 15.0
« Последнее редактирование: Август 30, 2011, 17:16 от Даниил » Записан
Странник
Гость
« Ответ #27 : Август 31, 2011, 14:04 »

development-файлы от MS SQL Server 8.0 (ntwdblib) и готовые бинарники плагина (Qt 4.7.3 MinGW).
Записан
Даниил
Гость
« Ответ #28 : Сентябрь 01, 2011, 07:37 »

После удачной сборки драйвера, необходимо пересобирать Qt ?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #29 : Сентябрь 01, 2011, 09:15 »

Нет.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Страниц: 1 [2] 3   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.091 секунд. Запросов: 23.