qmake сгенерировал target_wrapper.sh при проверке make

У меня есть проект qmake с шаблоном subdirs и двумя дочерними проектами. Проекты subdir представляют собой два тестовых примера. Проект построен на mingw64.

Когда я запускаю «проверку mingw32-make», процесс завершается сбоем, когда первый тестовый пример вызывается target_wrapper.sh:

cd && /C/JENKINS/workspace/MyProject/tests/test1/target_wrapper.sh release/test1.exe
/C/JENKINS/workspace/MyProject/tests/test1/target_wrapper.sh: Zeile 6: /home/jenluelokal/release/test1.exe: No such file or directory
mingw32-make[2]: *** [Makefile.Release:82: check] Error 127

Makefile.Release вызывает следующую строку для цели проверки:

check: first
    cd && /C/JENKINS/workspace/MyProject/tests/test1/target_wrapper.sh $(TESTRUNNER) release/$(TARGET) $(TESTARGS)

По запросу target_wrapper.sh:

#!/bin/sh
PATH=/C/Qt/Qt5.9.2/5.9/mingw64/bin:$PATH
export PATH
QT_PLUGIN_PATH=/C/Qt/Qt5.9.2/5.9/mingw64/share/qt5/plugins${QT_PLUGIN_PATH:+:$QT_PLUGIN_PATH}
export QT_PLUGIN_PATH
exec "$@"

Первый cd меняется на домашний каталог текущего пользователя и вызывает target_wrapper.sh. Сценарий target_wrapper.sh пытается выполнить бинарный файл test1, который не находится в домашнем каталоге.

Что я делаю не так?


person Jens Luedicke    schedule 13.12.2017    source источник
comment
Пожалуйста, опубликуйте target_wrapper.sh.   -  person Louis Kröger    schedule 13.12.2017
comment
Добавил target_wrapper.sh к моему вопросу.   -  person Jens Luedicke    schedule 13.12.2017
comment
Вы добавили DESTDIR = ... в свой .pro-файл?   -  person Louis Kröger    schedule 13.12.2017
comment
Нет. Тестовые программы не устанавливаются и не развертываются.   -  person Jens Luedicke    schedule 13.12.2017
comment
Вот почему он говорит, что /home/jenluelokal/release/test1.exe: No such file or directory его там нет. Установите DESTDIR = /home/jenluelokal/release. Также ваши пути выглядят так, будто вы смешиваете Windows с Linux.   -  person Louis Kröger    schedule 13.12.2017
comment
Тестовая система представляет собой машину с Windows 7 с Qt5, скомпилированную для Mingw64. Сценарий сборки — это короткий сценарий bash, работающий в среде msys/mingw. Никакого Linux, только набор инструментов в стиле GNU. Я не вижу необходимости копировать тестовые программы в свой домашний каталог перед запуском make check.   -  person Jens Luedicke    schedule 13.12.2017


Ответы (1)


Необходимо установить DESTDIR, чтобы цель проверки make знала, где искать тестовые исполняемые файлы. «cd» переходит в этот каталог перед попыткой запустить target_wrapper.sh.

person Jens Luedicke    schedule 23.01.2018