我正在Eclipse中使用ImageMagick编写一个小程序。我的程序编译并运行得很好,但是显示()(在弹出窗口中锯图像的方法)的每次调用都没有效果。通过命令行,同样的调用可以正常工作,所以我假设Eclipse出了问题。我感谢事先提供的任何帮助。
发布于 2014-01-15 18:52:46
Magick::Image::display方法期望在运行时环境中定义DISPLAY变量.在Eclipse /debug配置下,您应该能够将环境值设置为X11窗口管理器的主机名。您可以通过在命令行中回显它来发现这个值。
#!/bin/sh
echo $DISPLAY对于您的应用程序,添加错误处理或用户配置选项可能是明智的。
#include <cstdlib>
// ...
const char * env_display = getenv("DISPLAY");
if ( env_display == NULL ) {
// Error, or attempt to recover
}您还可以使用Magick::Image::x11Display在图像对象中设置X11的主机名。
https://stackoverflow.com/questions/21139601
复制相似问题