>We are developing an application in C++, which is going to call
>"octave-cli.exe" using windows api "CreateProcess". The c++ application
>is not calling any octave library functions directly.
>The applicaion creates a process that runs octave-cli.exe. The
>application stores the statements to be executed in a
>variable. Basically, the variable is an in-memory version of a .m file.
>The application writes the contents of the variable, line by line, to
>the created process's standard input stream, using windows pipes. The
>application also reads back the computed result from process's output
>stream. We need our application to be closed source, and don't want it
>to be GPL-licensed. Can we do this?
Yes. If you don't use any internals of Octave and you do not link to
Octave libraries, but you only use Octave as a black box reading input
and writing output, you can use it in every way you want.
If you distribute Octave together with your application, you must also
distribute the Octave source, or offer to provide it as stated in the
If you use Octave in a commercial product and you do make money from it,
it would be nice to contribute to Octave development with a donation or
other means. And you can also use this an advertisement for you :)
Francesco Potortì (ricercatore) Voice: +39.050.621.3058
ISTI - Area della ricerca CNR Mobile: +39.348.8283.107
via G. Moruzzi 1, I-56124 Pisa Skype: wnlabisti
(entrance 20, 1st floor, room C71) Web: http://fly.isti.cnr.it