【发布时间】:2014-06-24 06:29:39
【问题描述】:
我正在尝试使用野牛,所以我指定了以下行:
bison.commands = bison -d -o ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.parser.cc ${QMAKE_FILE_IN}
问题在于${QMAKE_FILE_IN} 和${QMAKE_FILE_PATH} 包含bison 无法理解的反斜杠。
那么如何将它们转换成正斜杠呢?
【问题讨论】:
我正在尝试使用野牛,所以我指定了以下行:
bison.commands = bison -d -o ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.parser.cc ${QMAKE_FILE_IN}
问题在于${QMAKE_FILE_IN} 和${QMAKE_FILE_PATH} 包含bison 无法理解的反斜杠。
那么如何将它们转换成正斜杠呢?
【问题讨论】:
使用shell_path函数:
bison.commands = bison -d -o \"$$shell_path(${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.parser.cc)\" \"$$shell_path(${QMAKE_FILE_IN})\"
【讨论】:
迟到了,但是……
message($$replace(QMAKE_FILE_PATH, \\\\, /))
...用正斜杠替换反斜杠(需要转义两次,因此是四倍反斜杠)。
【讨论】: