04/06/07 16:31
cygwin で liboctave 使えますか?
下のようなテストプログラムでエラーになってしまいます.
$ cat test.cpp
#include <iostream>
#include <octave/config.h>
#include <octave/Matrix.h>
using namespace std;
int main()
{
Matrix m(2, 2, 1.0);
cout << m << endl;
return 0;
}
$ g++ -I/usr/include/octave-2.1.49 -L/usr/lib/octave-2.1.49 -loctave -lcruft -lreadline -ltermcap -llapack -lblas -lg2c -lfftw -lm test.cpp -o test
/cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text+0x8e):test.cpp: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, Matrix const&)'
/cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdED2Ev+0xd):test.cpp: undefined reference to `Array<double>::~Array [not-in-charge]()'
/cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdEC2EiiRKd+0x1b):test.cpp: undefined reference to `Array2<double>::get_size(int, int) const'
/cygdrive/c/DOCUME~1/user/LOCALS~1/Temp/ccdhMv8V.o(.text$_ZN6Array2IdEC2EiiRKd+0x33):test.cpp: undefined reference to `Array<double>::Array[not-in-charge](int, double const&)'
collect2: ld returned 1 exit status
make: *** [test] Error 1