Pardiso 找不到许可证文件

问题描述

我的 Pardiso C 代码在我的 UBUNTU 系统上编译但是当我尝试运行代码时我得到:

许可证错误错误用户许可证 用户名:root 目录:/root 错误用户名或主机名。

我尝试了一个新的许可证代码并将 pardiso.lic 文件放在运行目录、主目录和根目录中,但没有成功。

请帮忙

解决方法

我假设您使用的是来自 pardiso-project 的 PARDISO 库?

正如 Pardiso manual 所述,您必须将许可证文件放在运行代码的用户的主目录中,或者放在运行应用程序的目录中。第三个选项是指定环境变量 PARDISO_LIC_PATH 并将 pardiso.lic 文件放在那里。

在任一情况下 - 必须已为运行代码的用户获取许可文件(如果您的用户正在运行代码,则命令行上的 ẁhoami)。

对我来说,所有这些都有效(使用当前的 Pardiso)。

根据您的描述,您似乎已经尝试过主目录。 我有一些猜测可能是什么问题:

您是否以 root 身份运行代码? PARDISO 正在 /root 中寻找许可证文件这一事实让我认为 - 您在下载许可证时是否指定了 root 用户?或者您是否输入了建议的 whoami

您的 pardiso.lic 文件中是否有任何尾随空格/换行符?

希望这会有所帮助(有点晚了)。

弗劳斯劳夫

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...