LINUX.ORG.RU

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

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

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

Одна из самых весёлых ситуаций с Qt, например - это когда мы подгружаем драйвер некоей СУБД и получаем сообщение, что загрузка не удалась. Причём какая именно библиотека не загрузилась, по сообщению понять невозможно. К примеру, нету libiconv, которую тянет libpq, которую в свою очередь тянет драйвер QPSQL — исход один, «driver not loaded».

Причём в рантайме это поправить, как я понимаю, невозможно, поскольку используются функции динамической загрузки (dlopen() в юниксах и LoadLibrary() в Windows), а у них куцая диагностика по определению.

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

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

Одна из самых весёлых ситуаций с Qt, например - это когда мы подгружаем драйвер некоей СУБД и получаем сообщение, что загрузка не удалась. Причём какая именно библиотека не загрузилась, по сообщению понять невозможно. К примеру, нету libiconv, которую тянет libpq, которую в свою очередь тянет драйвер QPSQL — исход один, «driver not loaded».

Причём в рантайме это поправить, как я понимаю, невозможно, поскольку используются функции динамической загрузки (dlopen() в юниксах и LoadLibrary() в Windows), а у них такая куцая диагностика по определению.

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

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

Одна из самых весёлых ситуаций с Qt, например - это когда мы подгружаем драйвер некоей СУБД и получаем сообщение, что загрузка не удалась. Причём какая именно библиотека не загрузилась, по сообщению понять невозможно. К примеру, нету libiconv, которую тянет libpq, которую в свою очередь тянет драйвер QPSQL — исход один, «driver not loaded».