Макрос не использовал, приложение собранное с помощью стат. кт работало на ура, если положить рядом с бинарником libmysql.dll ну или прописать в системе пути к этой либе.
Меня несколько просветили на qtcentre: "with -plugin-sql-mysql you will have to deliver the plugin and libmysql.dll, and with -qt-sql-mysql only libmysql.dll (because the plugin will be "hidden" inside Qt)."
Осталось понять зачем приложение просит еще и libpq.dll хотя эта либа в нем и не используется. Хотя понять я вроде понял. Сборка приложения идет еще и с теми ключами, с которыми собиралась кт. Проскакивают строчки -lmysql -lpq -L C:\mysql\lib\opt -L C:\pgsql\lib. Я так понимаю они берутся из qmake.conf или нет? Вопрос только как от этого избавиться?
Неужели придется пересобрать кт без -qt-sql-psql?
Я тут опять нагло влезу, думаю меня поправят те кто уже с этим разобрался.
Получается, что собрав Qt статически с ключами -qt-sql-psql и -qt-sql-mysql и исходя из того что товарищи с qtcentre правы насчет "the plugin will be "hidden" inside Qt" оба эти драйвера будут статически подлинкованы в билиотеку Qt'а, но потянут за собой libpq.dll и libmysql.dll. И видимо избавиться от libpq.dll в данном случае действительно можно только пересобрав Qt без ключа -qt-sql-psql.
Очень интересно ещё вот что:
А что будет, если собрать Qt статически но только с ключами -plugin-sql-psql и -plugin-sql-mysql?
Получатся ли в этом случае оба этих драйвера в виде отдельных статических библиотек, которые можно использовать как static plugins?
Ведь если получатся, то слинковав приложение только с нужным статическим плагином Вы потянете только необходимую ему dll-ку?
Или я опять наврал?