NSIS, 윈도우용 설치 시스템

NSIS Nullsoft Scriptable Install System. 스크립트 기반으로 동작하는 Windows 설치 프로그램을 만드는 오픈소스 시스템. 인스톨실드와 같은 상용 제품들을 널리 대체하면서 인기를 끌고 있다. (= 윈도우용 설치 프로그램을 만들어주는 프로그램.) 공식사이트 :  http://nsis.sourceforge.net/Main_Page * HM NIS Edit : A Free NSIS Editor/IDE. 사람들이 제일 쓸만한 거라고 한다. 다른건 딱히 안보이므로 다운받아서 쓰도록 한다. 1. 라이센스 zlib 라이선스인 자유 소프트웨어 라이선스와 결합한 자유 소프트웨어. (출처 : 위키백과 ) NSIS는 완전 Free라서 다운 받아서 쓰고, 상용화 하는 것도 아무 문제가 없다고 한다. HM NIS Edit는 무료고, 맘에 들어서 개발자에게 Donation 할 수도 있다. 2. 설치 NSIS 다운로드 링크 :  http://nsis.sourceforge.net/Download HM NIS Edit 다운로드 링크 :  http://hmne.sourceforge.net/ HM NIS Edit 설치 중 에러 발생. 뭔지 몰라서 일단 무시하고 설치해본다. 무시하고 설치하니까 일사천리로 잘 된다. 해당 폴더에 가보니까 그 파일이 없어서 생긴 문제같은데, (.lng)파일은 언어파일이고, 내가 쓸 일 없는 언어인 것 같으므로 무시하고 써보도록 한다. 문제가 생기면 그때 생각해야지. NSIS를 설치하면 폴더 내에 'NSIS' 실행파일과 'makensisw' 실행파일 두개가 생성된다. makensisw 는 바로 컴파일 할 수 있는 프로그램이고, NSIS 에 들어가면 각종 매뉴얼, 설명서, 업데이트 등등 NSIS 사용에 도움되는 다양한 링크가 있다. 3. 관련 문법 NSIS 스크립트는 한 줄에 하나의 명령어를 쓰도록 되어있다. C에서 세미콜론(;)으로 구분하는...

Software Build, 컴파일, 링크, 빌드

컴퓨터 공부하던 도중에 빌드와 관련해서 용어정리를 한 번 해놓으려고 하는 포스팅. 나중에 까먹으면 읽어봐야지.


# Software build, 소프트웨어 빌드

소스 코드 파일을 컴퓨터에서 실행할 수 있는 독립 소프트웨어 가공물로 변환하는 과정 혹은 그에 대한 결과물. 소프트웨어 빌드에서 가장 중요한 단계 중 하나는 소스 코드 파일이 실행코드로 변환되는 컴파일 과정이다. (출처 : 위키백과)

# Compile, 컴파일

기계어를 직접 사용하여 프로그래밍 하기에는 힘든 부분이 많다. 그래서 편하게 프로그램을 만들기 위한 과정이 필요하다. 예를 들어, 기계어 10줄을 사람이 알아듣는 특정 단어(여기에서는 A로 가정)로 정의한다. 그리고 프로그램을 작성할 때, 기계어 10줄 대신 A를 사용하여 프로그래밍한다.

그리고 A를 기계어 10줄로 번역해주는 프로그램 B를 만든다. 이렇게 하면, B를 실행하여 A를 처음의 기계어 10줄로 바꿀 수 있다. 이 때 B를 컴파일러(Compiler)라고 하고 B를 이용하여 A가 기계어로 바뀌는 과정을 컴파일(Compile)이라고 한다.

# Link, 링크

프로그램이 커지면서, 한 파일에 모든 소스코드를 작성하는 것이 비효율적임을 알게 된다. 그래서 소스코드를 여러 파일로 분리하기 시작했는데, 프로그램을 실행할 때에는 분리되어 작성된 파일을 하나로 합쳐야 한다. 분리되어 있는 소스코드 파일을 하나로 합치는 과정을 링크(link)라고 하며, 이 때 사용하는 프로그램이 링커(linker)이다.

# Build, 빌드

컴파일 과정과 링크 과정을 합쳐서 빌드(build)라고 하며, 이 때 사용하는 프로그램을 빌더(builder)라고 부른다.

전체적인 과정을 요약하자면, 먼저 소스코드를 프로그래밍 언어로 작성한 후, 파일로 저장한다. 저장한 소스 파일을 컴파일러를 이용하여 컴파일한다. 프로그래밍 언어가 기계어로 번역되어 목적 파일이 생성된다. 컴파일러가 생성한 목적 파일들을 링커를 이용하여 링크한다. 이 때에는 실행 가능한 목적 파일이 생성된다. (컴파일러와 링커가 생성한 목적 파일의 차이는 실행 가능 여부.)

댓글

이 블로그의 인기 게시물

쥬만지: 새로운 세계 리뷰

On-Demand 서비스

require(), module.exports