【问题标题】:gnuplot working via Shell, C Interface doing nothing at allgnuplot 通过 Shell 工作,C 接口什么都不做
【发布时间】:2014-09-26 13:16:21
【问题描述】:

在 Raspian 下工作,我有 2 个设置,我在 C 程序中生成 6 个 gnuplot(带有管道)。我在两者上都安装了 gnuplot 4.6,patchlevel 0。 设置 A:一切都按预期工作。 设置 B:不生成图。我开始调查一段时间,下载了C-Interface 的示例。它编译并执行示例没有错误,但没有显示图像。当我通过 shell 手动输入命令时(例如 sine.png)

gnuplot
gnuplot> set terminal png
gnuplot> set output sine.png
gnuplot> plot sin(x)

按预期生成输出。

结论:我想我在系统 B 上遗漏了一些库。但由于没有人主动抱怨,我不知道从哪里开始搜索?

【问题讨论】:

  • “设置 A”和“设置 B”有什么区别?当您可以回答时,您可能已经回答了这个问题。
  • 您可以使用 ldd 打印所有链接库:linux.about.com/library/cmd/blcmdl1_ldd.htm
  • @JoachimPileborg setup A 是我基于 Model B 的“原型系统”。我从一月份开始工作,并安装了很多不同的需要和不需要的软件。现在我必须切换到设置 B,因为我需要更多 USB 端口(型号 B+)。
  • 如果您的 shell 脚本中有任何重定向到 /dev/null 的操作(std-err 的常见做法是 cmd > outFile 2>/dev/null(还有其他几种变体,只需搜索 /dev/null)) ,删除重定向。您可能会在那里找到一些错误消息。祝你好运。
  • @specializt 我刚刚 ldd'ed 我的 gnuplots - 系统 A 上存在的所有库也存在于系统 B 上。但感谢您的提示。

标签: c shell gnuplot pipe raspbian


【解决方案1】:

我偶然发现了问题所在 - 速度。我发现放置一个

sleep(x.y);

在我的代码之间正在解决问题。由于我不是在处理时间关键的应用程序并且代码不必优化,我的问题就解决了。 显然在 Windows 上这个问题是众所周知的,请参阅 here
我仍然不清楚为什么这只会在较新的硬件上发生。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-07
    相关资源
    最近更新 更多