Не запускается приложение Qt

Сделал приложение, собрал все DLL , запустил у себя на пк, все работает, запустил на пк все работает, затем скинул другу , у него пишет что нету Qt5Core.dll , когда оно есть в папке

Скрин пк друга: http://prnt.sc/t8i4zi


Ответы (2 шт):

Автор решения: gbg

Для того, чтобы гарантированно положить в папку с приложением все нужные запчасти от Qt, используйте утилиту windeployqt из состава Qt

Нужно при помощи CMD или Powershell дотопать до папки, где лежит релизный exe программы и вызвать утилиту, указав полный путь к ее исполняемому файлу.

Если же это не работает, возможно, вы забыли установить на целевую машину Visual Studio Redist от вашей версии Visual Studio

→ Ссылка
Автор решения: Majestio

Как ответ, я ответил в комментах. Но есть более другое предложение - прекрасная статическая линковка (соблюдение лицензионных соглашений на вашей совести)...

  1. Развертываете Linux на виртуальной машине (если вы под виндо)
  2. Заходите на сайт http://mxe.cc и внимательно читаете ВСЕ!
  3. Создаете каталог /home/(ваш-юзернейм)/dev/cross
  4. Заходите в него и выполняете git clone https://github.com/mxe/mxe.git
  5. Ставите зависимые либы

Для дебиана это:

apt-get install \
autoconf \
automake \
autopoint \
bash \
bison \
bzip2 \
flex \
g++ \
g++-multilib \
gettext \
git \
gperf \
intltool \
libc6-dev-i386 \
libgdk-pixbuf2.0-dev \
libltdl-dev \
libssl-dev \
libtool-bin \
libxml-parser-perl \
lzip \
make \
openssl \
p7zip-full \
patch \
perl \
python \
ruby \
sed \
unzip \
wget \

Ну а потом - сама установка 8 комплектов:

cd mxe
make MXE_TARGETS='i686-w64-mingw32.shared \
                  i686-w64-mingw32.static \
                  x86_64-w64- mingw32.static \                
                  x86_64-w64-mingw32.shared \
                  i686-w64-mingw32.shared.posix \
                  i686-w64-mingw32.static.posix \
                  x86_64-w64-mingw32.static.posix \
                  x86_64-w64-mingw32.shared.posix' \
xz postgresql libmysqlclient luajit qt5 -j2 JOBS=2

После этого ставишь штатный Qt5-Linux, valgring из пакетов, прописываешь ранее установленные компиляторы и пакеты Qt5 в настройках QtCreator'а.

Вот и все - у тебя альтернативное окружение разработки. И САМОЕ ГЛАВНОЕ - могущее твою разработку линковать статически! А это значит - никаких деплоев, только твой исполняемый файл.

ЗЫ: Перед отдачей исполняемого модуля заказчику - не забывай его стрипать(да и все dll-ки на всякий случай)! Ибо Qt и без того - жЫрная скотина.

→ Ссылка