Embeddable Common Lisp 소개 노트
3502 단어 RaspberryPiECLcommon-lisp
소개
Qt와 함께 Android 앱도 만들 수 있다면 소문의 ECL (Embeddable Common Lisp)이 신경이 쓰였으므로, 내 PC에 도입해 보았습니다.
GMP 설치
RaspberryPi에서 ECL을 사용하려면 GMP 설치가 필요했습니다.
RaspberryPi가 아니라면 이 장은 날려도 괜찮다고 생각합니다.
그래서 GMP의 설치 순서를 기재해 둡니다.
GMP에 필요한 소프트웨어 설치
sudo apt install m4
공식 사이트에서 소스 코드를 다운로드하여 압축을 풀어서 만든 디렉토리로 이동.
우선, 본 기사 투고시의 최신판을 다운로드했습니다.
wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2
tar xjvf gmp-6.1.2.tar.bz2
cd gmp-6.1.2
Makefile 만들기
./configure
컴파일(시간이 걸렸습니다. 15분 정도.)
make
설치
sudo make install
Embeddable Common Lisp 소개
다운로드
본 기사 투고 시점에서의 최신판은 2016-12-19로 갱신된 Ver.16.1.3이었습니다.
다음 명령으로 다운로드하여 압축을 풀고 디렉토리에 들어갑니다.
wget https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.3.tgz
tar xzf ecl-16.1.3.tgz
cd ecl-16.1.3/
Makefile 만들기
다음 명령으로 Makefile 만들기
./configure
컴파일
컴파일은 상당히 시간이 걸렸습니다. (5~10분 정도)
RaspberryPi에서의 컴파일은 30분 정도 걸렸습니다・・・.
make
설치
ECL을 PC에 설치
sudo make install
동작 확인
이하의 커멘드로 REPL(Read-eval-print loop)를 기동.
ecl
이하의 「Hello, world!」를 표준 출력하는 프로그램을 실행.
(defun hello () (write-line "Hello, world!"))
(hello)
이하, 실행중인 모습
RaspberryPi에서 실행하는 모습
Quicklisp 소개
Quicklisp를 넣으면 여러가지 편리해지므로 ECL에서 Quicklisp 도입 절차 추기.
또한 EQL5와 ECL은 연동하고 있으므로 ECL에서 Quicklisp를 넣으면 EQL5에서도 사용할 수 있습니다.
먼저 다음 명령으로 quicklisp.lisp를 다운로드합니다.
curl -O http://beta.quicklisp.org/quicklisp.lisp
그런 다음 다운로드한 quicklisp.lisp를 SBCL에서 실행합니다.
ecl --load quicklisp.lisp
여러가지 처리가 끝나면 입력할 수 있게 되므로, 이하의 커멘드를 입력해 Quicklisp를 인스톨.
(quicklisp-quickstart:install)
설치가 끝나면 다음 명령을 입력하고 .eclrc에 quicklisp 경로를 통과합니다.
이렇게 하면 sbcl 시작 시 자동으로 로드됩니다.
(ql:add-to-init-file)
마지막으로
이번에는 설치와 동작 확인을 실시했습니다.
다음은 Qt와 함께 무언가 할 수 있으면 ~라고 생각합니다.
Reference
이 문제에 관하여(Embeddable Common Lisp 소개 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/c2280a273d29bf1e9027
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
sudo apt install m4
wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2
tar xjvf gmp-6.1.2.tar.bz2
cd gmp-6.1.2
./configure
make
sudo make install
다운로드
본 기사 투고 시점에서의 최신판은 2016-12-19로 갱신된 Ver.16.1.3이었습니다.
다음 명령으로 다운로드하여 압축을 풀고 디렉토리에 들어갑니다.
wget https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.3.tgz
tar xzf ecl-16.1.3.tgz
cd ecl-16.1.3/
Makefile 만들기
다음 명령으로 Makefile 만들기
./configure
컴파일
컴파일은 상당히 시간이 걸렸습니다. (5~10분 정도)
RaspberryPi에서의 컴파일은 30분 정도 걸렸습니다・・・.
make
설치
ECL을 PC에 설치
sudo make install
동작 확인
이하의 커멘드로 REPL(Read-eval-print loop)를 기동.
ecl
이하의 「Hello, world!」를 표준 출력하는 프로그램을 실행.
(defun hello () (write-line "Hello, world!"))
(hello)
이하, 실행중인 모습
RaspberryPi에서 실행하는 모습
Quicklisp 소개
Quicklisp를 넣으면 여러가지 편리해지므로 ECL에서 Quicklisp 도입 절차 추기.
또한 EQL5와 ECL은 연동하고 있으므로 ECL에서 Quicklisp를 넣으면 EQL5에서도 사용할 수 있습니다.
먼저 다음 명령으로 quicklisp.lisp를 다운로드합니다.
curl -O http://beta.quicklisp.org/quicklisp.lisp
그런 다음 다운로드한 quicklisp.lisp를 SBCL에서 실행합니다.
ecl --load quicklisp.lisp
여러가지 처리가 끝나면 입력할 수 있게 되므로, 이하의 커멘드를 입력해 Quicklisp를 인스톨.
(quicklisp-quickstart:install)
설치가 끝나면 다음 명령을 입력하고 .eclrc에 quicklisp 경로를 통과합니다.
이렇게 하면 sbcl 시작 시 자동으로 로드됩니다.
(ql:add-to-init-file)
마지막으로
이번에는 설치와 동작 확인을 실시했습니다.
다음은 Qt와 함께 무언가 할 수 있으면 ~라고 생각합니다.
Reference
이 문제에 관하여(Embeddable Common Lisp 소개 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/c2280a273d29bf1e9027
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
ecl
(defun hello () (write-line "Hello, world!"))
(hello)
Quicklisp를 넣으면 여러가지 편리해지므로 ECL에서 Quicklisp 도입 절차 추기.
또한 EQL5와 ECL은 연동하고 있으므로 ECL에서 Quicklisp를 넣으면 EQL5에서도 사용할 수 있습니다.
먼저 다음 명령으로 quicklisp.lisp를 다운로드합니다.
curl -O http://beta.quicklisp.org/quicklisp.lisp
그런 다음 다운로드한 quicklisp.lisp를 SBCL에서 실행합니다.
ecl --load quicklisp.lisp
여러가지 처리가 끝나면 입력할 수 있게 되므로, 이하의 커멘드를 입력해 Quicklisp를 인스톨.
(quicklisp-quickstart:install)
설치가 끝나면 다음 명령을 입력하고 .eclrc에 quicklisp 경로를 통과합니다.
이렇게 하면 sbcl 시작 시 자동으로 로드됩니다.
(ql:add-to-init-file)
마지막으로
이번에는 설치와 동작 확인을 실시했습니다.
다음은 Qt와 함께 무언가 할 수 있으면 ~라고 생각합니다.
Reference
이 문제에 관하여(Embeddable Common Lisp 소개 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/fireflower0/items/c2280a273d29bf1e9027
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Embeddable Common Lisp 소개 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fireflower0/items/c2280a273d29bf1e9027텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)