Я начинаю изучать развертывание приложения Qt, которое я разрабатывал, но мне никогда не приходилось развертывать какое-либо приложение C ++ до этого.
Я хочу иметь возможность отправлять свой продукт как предварительно скомпилированный исполняемый файл, который динамически связывается с файлами общей библиотеки (Qt) для Linux / Windows, так что есть исполняемый файл, который ищет в своих собственных подкаталогах библиотеки вместо библиотек, которые могут быть установлен в результате других продуктов Qt.
Это то, что возможно? Или файлы библиотеки Qt должны быть установлены отдельно, чтобы приложение связывалось с ними? Я хочу не требовать от конечного пользователя установки НИЧЕГО на свои системы, а также избегать статических ссылок.
Это нормальное поведение для Qt. Как это сделать, во многом зависит от вашей системы сборки.
Если вы используете CMake, вы можете создавать инсталляторы с помощью CPack. Вот ссылка на сайт для добавления необходимых общих библиотек в установщик. CPack делает много разных типов инсталляторов для Linux, Windows и Mac OS X.
Вы также можете создавать свои собственные установщики, используя NSIS. Это намного сложнее, но выполнимо.
Qt имеет документация о том, как развертывать приложения, использующие их библиотеки.
В моей компании мы работаем как с CPack, так и с NSIS. Путь к CPack намного проще, и в сети есть больше примеров.
Других решений пока нет …