2

我做了一个这样的脚本:

#! /bin/bash
/path/to/program

并使其可执行。我希望能够在 Nautilus 中双击它,选择“在终端中运行”,一切都应该与我自己从终端调用脚本时一样,它工作正常。当我双击时,我收到错误消息“加载共享库时出错:libpylonbase-2.3.3.so:无法打开共享对象文件:没有这样的文件或目录”并且终端立即关闭。libpylonbase-2.3.3 与程序中使用的工业相机有关。任何人都可以看到它在其中一种情况下而不是在另一种情况下工作的原因吗?

4

2 回答 2

1

当您从终端和 Nautilus 运行程序时,请检查环境变量是否相同。您可以通过插入以下行来执行此操作:

env > /tmp/test

至少 $PATH 和 $LD_LIBRARY_PATH 应该相同。

于 2012-04-25T17:40:53.113 回答
0

这次可能是 LD_LIBRARY_PATH,但您可以使用http://stromberg.dnsalias.org/~strombrg/env-search.html自动跟踪 env var 差异

于 2012-04-25T21:05:19.513 回答