Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Все библиотеки в определенном каталоге проэкта
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Разработка баз данных
kharkov_max
День добрый.

Разъясните пожалуйста как реализовать следующее.

Пишу небольшой проект.
Программа использует базу данных postgresql.
Для работы с pgsql был собран драйвер для QT4 (Windows) - все работает.

Но как только я копирую проэкт на другую машину (Windows), то моя программа ругается на отсутствие подключения к базе данных.
Не хватает библиотек pgsql сервера, из каталога (к прмеру) c:\psql\bin.
Необходимо 2 файла libintl-8.dll и libpq.dll, при чем путь к данным файлам жестко прописывается при компиляции драйверов. В связи с этим на каждом новом ПК на который ставится программа приходится создавать каталог c:\psql\bin.

1. Как скомпилировать драйверы для pgsql или указать пути к библиотекам pgsql так что б я мог использовать в своем поекте каталог (к примеру lib) и скопировать в него 2 этих файла libintl-8.dll и libpq.dll ?
2. Как перенести из корня поэкта в тот же каталог lib библиотеки QtSql.dll QtGui.dll и т.д. ?

Цель сделать программу независимой от библиотек других программ к примеру pgsql-server и т.д. и как-то более менее структурировать файлы в своей программе.

Спасибо.
kharkov_max
Разве ни кто не подскажет ?

На данный момент в корень каталога своего приложения я скопировал из psql (libiconv-2.dll, libintl-8.dll, libpq.dll) а из QT mingw (libgcc_s_dw2-1.dll, mingwm10.dll, QtCored4.dll, QtGuid4.dll, QtSqld4.dll) для debug и release соответственно.
Вроде все работает даже при переносе приложения на другой ПК.

Как все же создать каталог, к примеру lib и указать моему приложению что все либы теперь лежат там ?
Гость_kharkov_max_*
Хм ...

Запустил на "чистой" машине - прога не запустилась, пришлось добавить в программу папку sqldrivers в нее кинуть файл qsqlpsql4.dll и из psql добавить в корень программы 2 dll ки libeay32.dll и ssleay32.dll.

После этого программа начала нормально запускаться и конектится в DB.

В результате имею такую картину:

- Из psql взял библиотеки (libiconv-2.dll, libintl-8.dll, libpq.dll, libeay32.dll, ssleay32.dll)
- В корень программы скопировал sqldrivers\qsqlpsql4.dll из mingw\plugins
- Ну и из mingw (libgcc_s_dw2-1.dll, mingwm10.dll, QtCored4.dll, QtGuid4.dll, QtSqld4.dll)

Вообщем вопрос - правильно ли я делаю (может нужно делать по другому)?
И как все же все dll положить в отдельную папку?

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.