这是部分os nsis脚本(.nsi):
!ifndef QTDIR
!error "Please define QT installation directory via /DQTDIR=C:\qt\4.8.4"
!endif
但执行此命令后:
set QTDIR=C:\path\to\qt
erorr仍然发生。两台计算机上的结果相同,均为Windows 7. Nsis版本为2.46。
答案 0 :(得分:3)
!ifdef
和!ifndef
在编译器进程内部对定义进行操作。您可以使用!define
在脚本中设置一个,或使用-D
MakeNSIS命令行参数。
MakeNSIS还可以读取Windows环境变量:!echo "The value of QTDIR is $%QTDIR%"
。
您也可以同时支持:
!ifndef QTDIR
!define QTDIR "$%QTDIR%"
!endif
!if ! /fileexists "${QTDIR}"
!error "QTDIR not valid"
!endif