Factor 로컬 설치

Exercism 연습 문제를 내 컴퓨터에서 직접 풀 수 있도록 Factor를 로컬에 설치하는 방법을 배워요.


Factor 트랙은 Factor 0.101을 사용해요. 이전 버전은 지원하지 않아요.

안정 버전이나 나이틀리 버전 빌드를 설치하거나, 소스에서 직접 빌드할 수 있어요.

factor -e='vm-version print'를 실행해서 설치를 확인해 봐요. 0.101 이상이 출력되어야 해요.


안정 버전

https://factorcode.org#stable-release의 "Stable release" 섹션에서 안정 버전 바이너리를 받을 수 있어요.


나이틀리 버전

https://factorcode.org#development-release의 "Development release" 섹션에서 나이틀리 바이너리를 제공해요. 이 바이너리들은 git에서 빌드되지만, 빌드에 성공한 것만 보여줘요.


소스에서 직접 빌드하기

최신 기능을 가장 먼저 써 보고 싶은데 나이틀리 빌드조차 오래됐다고 느껴진다면, 최신 C++ 컴파일러(GCC >=4.8 또는 Clang >=3.5), make, curl이 필요해요.

이 간단한 준비물만 갖추면 다음을 할 수 있어요:

  1. build 셸 스크립트를 내려받아요: Unix 계열 / POSIX 셸은 여기 또는 Windows는 여기. Factor를 설치할 상위 디렉터리에 이 파일을 넣어요. 코드베이스를 담은 factor라는 디렉터리가 만들어져요.

  2. ./build.sh install처럼 실행해요. Windows에서는 .\build.cmd install이에요. Factor의 git 저장소를 복제하고 빌드한 뒤, https://factorcode.org에서 Factor VM 이미지를 내려받아요. 이 과정은 인터넷 연결 속도와 CPU 클럭 속도에 따라 2분에서 20분 정도 걸릴 수 있어요.

  3. 이제 factor 하위 디렉터리에 생성된 factor 또는 factor.exe 바이너리를 실행할 수 있어요. factor --help를 실행해 보면 도움말을 볼 수 있어요. 명령줄에서 문서를 볼 수도 있고, GUI Listener에서 F1을 누르면 help browser가 열려요.

  4. 앞으로는 factor 하위 디렉터리 안의 build.sh(Windows에서는 build.cmd)를 사용해서 git에서 변경 사항을 가져와 제자리에서 다시 빌드하고, 필요하면 새 VM 이미지를 내려받아요.

그러면 파일 구조는 이렇게 돼요:

.
├── build.sh                   <- delete if you like
└── factor
    ├── basis
    ├── boot.unix-x86.64.image
    ├── build.cmd              <- use these from now on
    ├── build.sh               <-
    ├── core
    ├── extra
    ├── factor
    ├── Factor.app
    ├── factor.image
    ├── GNUmakefile
    ├── libfactor.a
    ├── libfactor-ffi-test.so
    ├── LICENSE.txt
    ├── misc
    ├── Nmakefile
    ├── README.md
    ├── unmaintained
    ├── vm
    └── work

이제 최상위 build 스크립트는 필요 없어요. 앞으로는 내려받은 스크립트를 사용하면 돼요.


소스에서 직접 수동으로 빌드하기 (권장하지 않아요)

저장소를 복제하고 그 폴더에서 make를 실행해요.

make가 존재하지 않는 타깃에 관한 오류와 함께 실패하면 make factor를 시도해 봐요. Makefile을 읽을 수 있다면 GNUmakefile에서 사용하는 플랫폼의 make 타깃을 찾아봐요.

그래도 실패하면 오류 내용을 담아 factor/factor에 이슈를 열어 주세요. 친절한 개발자들이 기꺼이 도와줄 거예요.