본문으로 건너뛰기
  1. Posts/

Casio FX-9860GIII/FX-9750GIII용 khicas 빌드하는 과정

·
Linux 계산기 Giac
작성자
hw5e
page.hw5e.cc

빌드 성공까지 과정을 적은 것으로 정리된 빌드 가이드는 다음 글을 참고.

Casio FX-9860GIII/FX-9750GIII 용 KhiCAS 소스 빌드 가이드
Linux 계산기 가이드 Giac
발매 국가에 따라 나눠진 FX-9860GIII, FX-9750GIII, GRAPH35+EII 이 세 모델은 거의 같은 제품이다. x86_64(AMD64) 리눅스에서 빌드가 가능합니다. 빼먹은 부분이 있을 수 있으니 빌드 과정에 문제가 있다면 말해주세요.

개발자가 GPL 준수를 위해 코드를 정리 안하고 그냥 배포한 느낌이다.

설명서의 12번부터 저작권 정보와 소스코드랑 빌드 도구 어디서 받는지 적혀 있는데, casiolocal.tgz 파일 라이브러리 1개랑 소스코드를 받고 빌드하라고 한다. 이쪽에도 설명이 조금 있다.

소스 코드, libmpfr.so.4 파일, 컴파일러가 있는 casiolocal 파일을 받고 일단 빌드를 시도해 보자.

이름이 giac35인 이유는 이 계산기의 프랑스버전은 GRAPH35+EII라는 이름으로 발매되었기 때문이다.
당황스러운게 소스를 압축 풀었더니 뜬금없이 다른 프로그램의 소스가 뒤섞여있다? FX-9860GII용 Eigenmath의 README 같은게 그대로 있었다.

casiolocal에서 gcc 툴체인이 있는 bin 디렉토리를 찾고 경로를 PATH에 추가했다.

libmpfr.so.4은 설명에 적힌대로 안하고 그냥 LD_LIBRARY_PATH에 경로를 추가하는 식으로 추가했다.

아무튼 빌드를 시도

적힌 대로 src0 디렉토리에서 make all을 해보자.

컴파일은 제대로 된 것 같은데 g1a-wrapper가 없다고 나온다 그걸 어디서 받는지 몰라서 c_g1awrapper를 대신 사용했는데 나중에 g1a-wrapper를 찾긴 찾았다. CG50용 빌드할 때 mkg3a쓰라는건 잘 적어놨으면서 여긴 빼먹은 것 같다.

g1a-wrapper를 설치하고 다시 빌드를 시도하니 이번엔 권한이 없다고 뜨는데 빌드한 결과물을/shared/tmp에다 복사하려고 해서 그런 것이였다. 빌드 자체는 성공해서 빌드된 파일은 소스코드들 사이에 잘 있었다. 그냥 Makefile에서 결과물을 복사하는 부분을 지웠다.

Makefile을 다시보니 make make all은 프랑스어 버전과 영어 버전 양쪽 다 빌드하는 명령어였고 make khicas.g1a을 하면 프랑스어 버전, make khicasen.g1a 영어 버전을 빌드한다. 영어 버전에는 저 /shared/tmp로 복사하는 부분이 없었다.

그 밖에 -j 옵션으로 빌드를 빠르게 할 수 있었다.

빌드된 것을 구동해보니 구버전에 있었던 OS 3.7버전은 테스트되지 않았다는 경고가 나오는데 홈페이지에서 있는 것는 OS 3.7 경고가 안나타나는 것으로 봐서 소스코드를 업데이트하지 않은 것 같다.

CG10,50용은 아직 빌드를 못해봤는데,

이건 한술 더떠서 Makefile에 라이브러리 경로를 사용자 이름이 포함된 절대경로를 적어놨다.

Reply by Email