我正在运行一个利用Fedora 20上的OpenMPI库的程序。
当我从终端运行命令时:
../bin/boxfit ../settings/boxfitsettings.txt | tee boxoutput.log
它很成功。
当我通过Python控制台运行它时,我返回一个错误:
os.system('../bin/boxfit ../settings/boxfitsettings2.txt | tee boxoutput.log')
../bin/boxfit: error while loading shared libraries: libmpi_cxx.so.1: cannot open shared object file: No such file or directory
会产生同样的错误
subprocess.call(args,shell=True)
我将路径设置为相同,因此它应该可以访问相同的库。是否有我需要注意的内部Python功能来解决此错误?或者它可能是一个程序编译错误,说程序库无法与Python对话?
答案 0 :(得分:0)
看起来它在Python自己的目录中检查此文件,而不是从当前目录检查。
你可以做的是例如
struct Node
{
Node(int a, int b, int c);
int left;
int right;
int number;
};
Node::Node(int a, int b, int c)
{
number = a;
left = b;
right = c;
};
int main()
{
int n, number, left, right;
cin >> n;
vector <Node> BST(n);
for (int i = 0; i < n; i++) {
cin >> number;
cin >> left;
cin >> right;
Node *leaf = new Node(number, left, right);
BST.push_back(*leaf);
}
vector<Node>::iterator it;
for (it = BST.begin(); it != BST.end(); ++it) {
cout << it->number<<" "<<endl;
}
system("pause");
}
要获取您所在位置的路径,请将其格式化为您的命令