안녕하세요.
이곳에 올리는게 적당한지 모르겠지만 일단 올려 봅니다. 다른 곳으로 옮기는게 좋겠다 보이면 알려주세요.
비싼 Matlab을 대체하고자 우분투 16.0.4 LTS 에 GNU Octave 를 설치하였습니다.
터미널에서
sudo apt-add-repository ppa:octave/stable
sudo apt-get update
sudo apt-get install octave
현재 버전이 4.2.1이 설치가 됩니다. 더 높은 버전이 나오면 그 것이 설치가 되겠지요.
윈도 용을 설치하고자 하신다면 아래 링크에서 받으시면 됩니다. exe 버전은 설치용이고 zip 버전은 압축을 풀고 전체를 원하는 곳에 옮긴 뒤 들어 있는 배치화일을 클릭하면 설치 없이 돌아 갑니다.
https://www.gnu.org/software/octave/#install
리눅스에 익숙해 지고자 두 OS 에 설치 했지만 주로 리눅스용을 사용해 봤습니다. 사용중에 보니 윈도우용 Octave 랑 다르게 (윈도용은 필요한 octave-forge들이 octave 가 설치될때 대부분 같이 설치가 됩니다. 리눅스용은 이래서 일반 사용자가 사용하기엔 아직도 불편한 듯) 리눅스용 Octave는 설치 후에도 Octave-forge 가 하나도 설치되어 있지 않는 것을 알게 되었습니다. 당장에 간단한 function 에서 에러를 내 뿜길래 구글링을 해 보니 octave-forge 를 별도로 Octave command 창에서 설치해야 한다고 되어 있더군요. octave-forge라는게 Matlab의 툴박스 같은 것이라 필요한 package 가 없으면 사용에 제한이 많습니다. 이곳 저곳 정보를 참고하여 설치해 봤으나 계속 실패하다가 아래 방법으로 설치가 되었습니다.
먼저 아래 링크에서 liboctave-Dev 를 설치 해야 합니다. 이 정보는 실제로 octave에서 package 설치과정에서 알게된 사항으로 이것이 설치되어 있지 않으면 package 설치가 되지 않습니다. 저는 우분투 16.0.4LTS 의 것을 설치 했습니다.
https://pkgs.org/download/liboctave-dev
터미널에서 아래와 같이 입력하면 liboctave-Dev 가 설치 됩니다.
sudo apt-get update
sudo apt-get install liboctave-dev
다음은 octave-forge 를 sourceforge 에서 다운로드 받습니다.
https://octave.sourceforge.io/packages.php
위 링크에 package 들이 있고요 각 package 아래 초록색 화살표를 눌러 주면 다운로드 받을 수 있게 됩니다.
다운로드를 다 받으면 여러 종류의 tar.gz 화일들이 download folder 에 저장되는데 이것들을 임시 폴더로 다 옮깁니다. 그대로 download 폴더에 두고 octave 에서 작업 폴더를 download 폴더로 지정하고 작업헤도 됩니다.
다음으로 Octave 를 구동하고 작업 folder 를 임시로 package 들을 옮겨둔 곳으로 지정합니다. 최신 버전 GNU Octave 4.2.1 의 경우는 화면 왼쪽 상단 Browser에서 현재 작업 폴더를 선택할 수 있고 임시폴더를 선택하면 옮겨둔 package 화일들이 보이게 됩니다. 오른쪽 command 창에서 아래와 같이 입력하고 엔터를 누르면
>> pkg install msh-1.0.10.tar.gz
성공적으로 설치가 되거나 다른 package 를 먼저 설치하라고 나옵니다. package 에 따라 바로 설치되는 것도 있고 사전에 다른 Package를 먼저 설치하고 나서 설치해야 하는 package 가 있는 것으로 나옵니다. 하나 하나 화일이름과 버전 정보 그리고 화일 타입을 위 형식으로 입력하면 설치가 됩니다.
화면에 >> 가 나타나면 다음 명령을 입력하여 추가 설치가 가능합니다. >> 가 나타나지 않는 경우는 아직 설치 과정에 있음을 의미 합니다.
설치된 Octave-forge 의 Package list를 보고 싶으면 아래 처럼 입력합니다. 아래 경우는 저의 화면 입니다.
>> pkg list
Package Name | Version | Installation directory
----------------+---------+-----------------------
bim | 1.1.5 | /home/dell-e1505/octave/bim-1.1.5
bsltl | 1.1.1 | /home/dell-e1505/octave/bsltl-1.1.1
control | 3.0.0 | /home/dell-e1505/octave/control-3.0.0
data-smoothing | 1.3.0 | /home/dell-e1505/octave/data-smoothing-1.3.0
fpl | 1.3.5 | /home/dell-e1505/octave/fpl-1.3.5
msh | 1.0.10 | /home/dell-e1505/octave/msh-1.0.10
optim | 1.5.2 | /home/dell-e1505/octave/optim-1.5.2
splines | 1.3.2 | /home/dell-e1505/octave/splines-1.3.2
struct | 1.0.14 | /home/dell-e1505/octave/struct-1.0.14
이거 알아 내는데 하루 꼬박 걸렸습니다. 먼저 경험하신 분들이 남기신 자료를 참고 했지만 설명들이 저 같은 초보를 위한 것이 아니더군요. 게다가 작동하지 않는 부분이 대다수 여서 하나 하나 시행착오를 통해 위 정보를 구했습니다.
혹시 저같은 리눅스 초보에 Matlab 대용으로 Octave 를 사용하고자 하시는 분에게 참고가 되길 바라며 적어 봅니다.
기 작성된 미분방정식 계산을 위한 Matlab 화일을 열어 보니 잘 읽어 들입니다. syntax 가 상당히 비슷한데다 저의 경우에는 사용하는 부분이 초보수준으로 단순하다 보니 Matlab 대체에 무리가 없어 보입니다.
감사합니다.
재팔님 정성껏 써주신 글 잘 봤습니다
수학을 이용하려면 꼭 필요한 도구 같은데
직접 고생해서 걸어가신 길을 이렇게 공유해주셨네요
고맙습니다!
필요하신 여러분들에게 전달이 되길~!