LINUX.ORG.RU

История изменений

Исправление hobbit, (текущая версия) :

обычно, если не хватает dll-лины, то прога выдаёт системную ошибку. Здесь же всё отрабатывалось нормально.

DLL, как вы знаете, можно грузить двумя способами: статически, средствами ОС или динамически, через системные вызовы (LoadLibrary в винде, dlopen в линуксе - QLibrary всего лишь даёт универсальную обёртку над ними). В первом случае мы получаем исчерпывающую ошибку, чего именно не хватает, во втором это приходится отслеживать руками. В нашем случае способ комбинированный: QtSql вызывает плагин динамически, а уже он, ЕМНИП, тянет либы от PostgreSQL статически (не путать статический вызов динамической библиотеки со статической библиотекой - это совсем разные вещи). В такой ситуации грамотно обработать ошибку очень тяжело.

P.S. Тема на самом деле интересная и «веченозелёная», но при чём тут дебиан, я не понял. Напрашиваются теги qt и postgresql.

Исправление hobbit, :

обычно, если не хватает dll-лины, то прога выдаёт системную ошибку. Здесь же всё отрабатывалось нормально.

DLL, как вы знаете, можно грузить двумя способами: статически, средствами ОС или динамически, через системные вызовы (LoadLibrary в винде, dlopen в линуксе). В первом случае мы получаем исчерпывающую ошибку, чего именно не хватает, во втором это приходится отслеживать руками. В нашем случае способ комбинированный: QtSql вызывает плагин динамически, а уже он, ЕМНИП, тянет либы от PostgreSQL статически (не путать статический вызов динамической библиотеки со статической библиотекой - это совсем разные вещи). В такой ситуации грамотно обработать ошибку очень тяжело.

P.S. Тема на самом деле интересная и «веченозелёная», но при чём тут дебиан, я не понял. Напрашиваются теги qt и postgresql.

Исходная версия hobbit, :

обычно, если не хватает dll-лины, то прога выдаёт системную ошибку. Здесь же всё отрабатывалось нормально.

DLL, как вы знаете, можно грузить двумя способами: статически, средствами ОС или динамически, через системные вызовы (LoadLibrary в винде, dlopen в линуксе). В первом случае мы получаем исчерпывающую ошибку, чего именно не хватает, во втором это приходится отслеживать руками. В нашем случае способ комбинированный: QtSql вызывает плагин динамически, а уже он, ЕМНИП, тянет либы от PostgreSQL статически (не путать статический вызов динамической библиотеки со статической библиотекой - это совсем разные вещи). В такой ситуации грамотно обработать ошибку очень тяжело.