如何在.pro文件中为TARGET使用空格和尖括号

时间:2018-07-22 03:18:09

标签: c++ qt

我想将Qt应用程序命名为

  

测试<2>

所以我将.pro文件写为

TEMPLATE = app
TARGET = test\\\ \\\<2\\\>

QT = core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

SOURCES +=  main.cpp

但是在构建时失败:

11:14:31: Running steps for project asdf...
11:14:31: Configuration unchanged, skipping qmake step.
11:14:31: Starting: "/usr/bin/make" 
/home/erik/Qt/5.11.1/gcc_64/bin/qmake -o Makefile ../asdf/asdf.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug
WARNING: DESTDIR: Cannot access directory '../build-asdf-Desktop_Qt_5_11_1_GCC_64bit-Debug/test/ /<2'
/bin/sh: 1: cannot open 2/: No such file
/bin/sh: 1: cannot open 2/: No such file
Makefile:254: recipe for target 'test/ //<2/>' failed
make: *** [test/ //<2/>] Error 2
11:14:31: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project asdf (kit: Desktop Qt 5.11.1 GCC 64bit)
When executing step "Make"
11:14:31: Elapsed time: 00:00.

如何在TARGET中转义字符?

1 个答案:

答案 0 :(得分:1)

您不应该这样做,对于qmake:您不应该这样做,因为生成的makefile将不可用。大多数操作系统都会保留这些字符,尽管具有这种名称的文件在文件系统中可以表示,但不能以典型方式使用。参见例如Filename:Reserved characters and words进行概述。

应用程序窗口的标题(例如,here)与文件名无关。您可以使用QWidget的{​​{1}}属性将它们设置为所需的内容。