'MATLAB'에 해당되는 글 1건

  1. 2014.02.28 PHP로 웹에서 컴파일된 MATLAB 실행

환경

CentOS 6.x, Apache, PHP

MATLAB 2011a 로 컴파일된 바이너리, MCR 설치

참고사항

- x64 빌드는 당연히 x86 에서 실행 불가

- 실행 방법은 단순히 exec()

- 당연히 실행 디렉토리와 파일에 실행권한(execute permission) 추가

- 실행디렉토리에는 쓰기권한(write permission) 필요

- mcc build option에 -C 사용 (예: $MATLAB/bin/mcc -m -C -R '-nojvm,-nodisplay' ./mymatlabcode.m)
-- 안하면 다음 에러를 아파치 로그에서 볼 수 있음 : Could not access the MCR component cache.

- 그러고도 보면 안된다. 이유는 아파치 로그 보면 락파일 생성 실패

Could not access preferences directory: '/.matlab/mcr_v715/wave_spec_59B08FCA175BF328CA63A32591F61785'. System error: 'Tried to obtain a lock on a non-existent directory: /.matlab/mcr_v715/.deploy_lock.0'

-- centos 에서 rpm으로 설치한 apache 는 웹에서 접속 시 home directory가 / (root) 로 되어있나보다. (passwd 파일에 있는 경로와 다르다.)

-- 컴파일시 같이 생성된 run_mymatlabcode.sh 파일에 홈경로변수($HOME)를 쓰기 가능한 경로로 지정해버렸다.

-- $HOME=write enabled path

-- .ctf 파일 빼먹으면 안된다


웹에서 실행해보면 지정한 홈경로에 mymablabcode_mcr 디렉토리가 생성(복사?)되고 실행되는걸 볼 수 있다. -_-;;;;;








Posted by freezn