我试图在Ubuntu 15.10上从SymbolicC++ 3-3.35-ac.tar安装SymbolicC++。我做了一个./configure,make,sudo make install,没有任何错误。Linux上的SymbolicC++错误
我试图编译g++ test1.cpp -lsymbolicc++
如下:
#include <iostream>
#include "symbolicc++.h"
using namespace std;
int main(void)
{
Symbolic x("x");
cout << integrate(x+1, x) <<endl; // => 1/2*x^(2)+x
Symbolic y("y");
cout << df(y, x) << endl; // => 0
cout << df(y[x], x) << endl; // => df(y[x],x)
cout << df(exp(cos(y[x])), x) << endl ;
// => -sin(y[x])*df(y[x],x)*e^cos(y[x])
return 0;
}
此代码是从SymbolicC维基百科的文章++
我收到以下错误:
[email protected]:~/books_computerAlgebraSys$ g++ test1.cpp -lsymbolicc++
/usr/local/lib/libsymbolicc++.so: undefined reference to `Number<double>::Number(double const&)'
/usr/local/lib/libsymbolicc++.so: undefined reference to `Number<int>::Number(int const&)'
collect2: error: ld returned 1 exit status
校正:须藤使安装应be sudo make install – DougT
您可以使用[编辑](http://stackoverflow.com/posts/35510776/edit)链接更正您的问题。 –
它看起来像symbolicC++是一个只有标题的库。至少在我的实验中,你的代码没有'-lsymbolicC++ '生成OK。该程序崩溃,可能是因为库中存在错误,但这是另一个问题。 –