2016-02-29 2 views
1

Я использую Qt 5.5 для проекта и пытаюсь использовать функцию установки для копирования файлов в каталог сборки. У меня в .pro (это упрощенная версия, я использую, чтобы попытаться выяснить вопрос):Qt install не копирует файлы

copy_files.path = $${OUT_PWD}/debug 
copy_files.files = win32_libs/* 
INSTALLS += copy_files 

Я имею в конфигурации сборки дополнительный шаг после того, как «сделать», который является «сделать установку» как для отладки, так и для выпуска (выбрано из раскрывающегося элемента «Сделать»). После очистки -> запустить qmake -> build, Qt абсолютно отказывается копировать любые файлы в «win32_libs» в каталог сборки отладки.

Если я укажу только «win32_libs» вместо «win32_libs/*», он скопирует каталог (не полезно), и, оказывается, он скопирует любой каталог, но не будет файлов, если они не СОДЕРЖИМОГО в каталоге (снова, не полезно).

Так как я могу убедить его просто скопировать файлы?

ответ

0

После подобной проблемой сталкиваются и не будучи в состоянии решить сразу, я решил сделать обходной путь для целевой Windows, как:

# post build copy dependencies 
win32 { 
    # all the necessary files listed relative to the root project directory 
    OTHER_FILES += stuff\myfile1 stuff\myfile2 
    OTHER_FILES += stuff\myfile3 stuff\myfile4 

    DESTDIR_WIN = $$DESTDIR 
    DESTDIR_WIN ~= s,/,\\,g 
    # debug pro file statement 
    message(Destination WINDOWS $$DESTDIR_WIN) 

    PWD_WIN = $${PWD} 
    PWD_WIN ~= s,/,\\,g 
    for(FILE, OTHER_FILES){ 
     QMAKE_POST_LINK += xcopy /d/y $${PWD_WIN}\\$${FILE} $${DESTDIR_WIN}$$escape_expand(\\n\\t) 
    } 
} 

И хсору команды снабженным параметрами, чтобы избежать ненужной фактической копии.

Смежные вопросы