2010-11-19 5 views
2

우분투 리눅스에서 C/C++를 사용하는 FastCGI 세션 내에서 옥타브 인터프리터를 구현하려고합니다. 내가 실행 해요 문제는 FCGI가 FCGI_stdout표준 출력 리디렉션 있다는 것입니다,하지만 미리 컴파일 된 옥타브 헤더는 여전히 아파치하는 error.log에 끝나는 대신 브라우저에 인쇄 된 일반 표준 출력을 사용하여 관리 할 수 ​​있습니다. FastCGI 및 옥타브에서 표준 출력 재정의

당신의이 FCGI의 표준 출력를 사용하는 시스템의 표준 출력를 사용 옥타브를 리디렉션 할 수있는 방법을 알고 계십니까? 또는 옥타브 코드를 수정하고 다시 컴파일 할 필요없이 표준 출력을 파일로 리디렉션하도록 할 수도 있습니다. 특히 옥타브에서 표준 출력을 설정하면 작동하지 않으며, 어느 쪽도 일시적으로 시스템 레벨에서 표준 출력을 리디렉션하려는 시도를 수행

감사

+0

C 또는 C++? 어느 것? –

+0

C++에서 컴파일하고 대부분의 코드는 C++로되어 있지만 작동시키기 위해서는 모든 print 문을 C 스타일 (cout 대신 printf)으로 수행해야합니다. – vityav

+0

Octave가 사용하고 컴파일 한 미리 컴파일 된 헤더를 수정할 수 있습니까? 그렇다면'#define stdout FCGI_stdout'과 같은 것을 할 수는 없습니까? –

답변

2

다른 사람들이 길을 온다면 내 자신의 질문에 대답하지합니다. 이것은 파일로 옥타브의 표준 출력을 리디렉션 할 수 있습니다

http://octave.1599824.n4.nabble.com/dup2-on-stdout-or-using-disp-on-another-file-stream-td1611884.html

다른 프로그램에서 읽을 (또는 한 번 자신의 표준 출력 스트림-CGI를 빨리 가능성이 될 : 여기에 설명하지만, 옥타브 사용 명령 dup2에가 있습니다 당신은 PID를 가지고)