Zitat von Lisa Maletzki <l.maletzki@tu-bs.de>:
Zitat von "Richard B. Kreckel" <kreckel@ginac.de>:
Hi!
Lisa Maletzki wrote:
Thanks again, I think that will do the trick but when compiling it I get a linker error which I cannot solve (I'm fairly new to c++) I can't say if it is just missing a library of if I wrote something in the code wrong.
This is the output:
g++ -Xlinker `pkg-config --cflags --libs ginac` -o"sep" ./src/bezierPoints.o ./src/testmain.o ./src/xml.o ./src/xmlParser.o ./src/bezierPoints.o: In function `bezierPoints::solve(GiNaC::matrix, int)': /my_folder/Debug/../src/bezierPoints.cpp:63: undefined reference to `bezierPoints::generate_symbols(std::vector<GiNaC::symbol, std::allocator<GiNaC::symbol> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
The method is declared in the header file and called with the write name in the source file, so typing error can be ruled out. Any help?
Apparently, you've declared the function generate_symbols inside namespace bezierPoints (since that's where the linker is looking for it). Did you also implement it inside namespace bezierPoints?
Bye -richy. -- Richard B. Kreckel <http://www.ginac.de/~kreckel/> _______________________________________________ GiNaC-list mailing list GiNaC-list@ginac.de https://www.cebix.net/mailman/listinfo/ginac-list
Thanks a bunch for the help a clearly stupid mistake :)
Kind regards,
Lisa
That was a little overhasty I suppose because I came across another problem. The following snippet of code will give me a matrix::operator(): index out of range. unsigned size = 18; matrix vectorX(size, 1); for (unsigned i = 0; i < size; i++) { vectorX(i, 1) = vars[i]; } when making the matrix of size (size, size) it works but I have not the matrix I need. sub_matrix could correct that but unfortunately it will just end up in a matrix inside a matrix when doing something like this: matrix tmp(size,1); tmp = sub_matrix(vectorX,0,size,1,1); Any idea how to reduce a matrix and get a matrix back or how to work the first one properly? Kind regards, Lisa