2015-02-04 134 views
1

下面是部分OS NSIS腳本(.nsi):NSIS不看環境變量

!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。

回答

3

!ifdef!ifndef在編譯器進程內部進行操作。您可以在!define的腳本中設置一個,或使用MakeNSIS命令行參數-D

MakeNSIS還可以讀取Windows環境變量:!echo "The value of QTDIR is $%QTDIR%"

您還可以同時支持:

!ifndef QTDIR 
!define QTDIR "$%QTDIR%" 
!endif 
!if ! /fileexists "${QTDIR}" 
!error "QTDIR not valid" 
!endif