NSIS로 스크립트를 작성해 인스톨러를 컴파일 하는 중에, "Internal compiler error #12345" 라고 나오며 컴파일이 완료되지 않는 경우가 있다.

원인:

NSIS 기본 인스톨러 사이즈가 2G로 설정되어 있어, 이를 넘어가는 크기의 인스톨러를 만들려고 하면 위와 같은 에러가 나온다.

혹은, 디스크의 저장 공간이 부족한 경우에도 위 에러가 나올 수 있다고 한다.

해결책:

nsisbi

2G 제한을 없애고 8G까지 인스톨러를 만들 수 있도록 수정한 바이너리가 소스포지에 올라와 있다.

간단히 해당 바이너리로 교체해서 사용 가능하다. (NIS Editor를 사용하고 있다면, makensis.exe 경로를 바꿔주면 된다.)

https://sourceforge.net/projects/nsisbi/

 

nsisbi

Download nsisbi for free. NSISBI aims to remove the current 2GB limit found in NSIS. NSISBI aims to remove the current 2GB limit found in NSIS. This version adds support for using a separate file for storing the install data, therefore allowing installer s

sourceforge.net

WinImage plug-in

또는, WinImage plug-in을 사용해도 가능하다고 한다.

다만 이 플러그인은 unicode만 지원하고, 어드민 권한을 요구한다고 한다고 해서 사용해 보진 않았다..

https://nsis.sourceforge.io/WimImage_plug-in

 

WimImage plug-in - NSIS

Links Plugin package: WimImage_plugin.zip (44 KB) Forum thread Description This plugin is designed to remove the current 2GB limit in NSIS by creating and extracting images contained in .wim files that are separate to the installer. Thanks to the Wim API b

nsis.sourceforge.io

 

+ Recent posts