Code :: Blocks,c ++,magick ++任何演示结果都是:mingw32-g ++。exe:致命错误:没有输入文件

时间:2013-07-16 01:21:55

标签: c++ image g++ codeblocks magick++

我正在尝试将Magick ++与Code :: Blocks一起使用(两者都是最新版本)。 我使用win7 x64并且我安装了ImageMagick x86和x64动态(带有DLL)。

每当我尝试运行演示c ++文件(如下面的代码)时,我都会收到相同的消息:

\ImageMagick-6.8.6-Q16\include\"  -c C:\Users\ad\Desktop\C++\Magick++\test\main.cpp -o obj\Debug\main.o
mingw32-g++.exe: fatal error: no input files
compilation terminated.
Process terminated with status 1 (0 minutes, 0 seconds)
0 errors, 0 warnings (0 minutes, 0 seconds)

有没有人经历过这个? 你能帮我把它弄好吗?

我将.jpg文件“wall.jpg”放在与项目相同的文件夹中。

由于

来自magick ++ demo文件夹

的源代码
#include <Magick++.h>
#include <iostream>
using namespace std;
using namespace Magick;
int main(int argc,char **argv)
{
  InitializeMagick(*argv);

  // Construct the image object. Seperating image construction from the
  // the read operation ensures that a failure to read the image file
  // doesn't render the image object useless.
  Image image;
  try {
    // Read a file into image object
    image.read( "wall.jpg" );

    // Crop the image to specified size (width, height, xOffset, yOffset)
    image.crop( Geometry(100,100, 100, 100) );

    // Write the image to a file
    image.write( "x.gif" );
  }
  catch( Exception &error_ )
    {
      cout << "Caught exception: " << error_.what() << endl;
      return 1;
    }
  return 0;
}

4 个答案:

答案 0 :(得分:1)


你好 ,

问题不在于缺少“wall.jpg”, 但是编译过程(创建可执行二进制文件),如示例输出所示:

mingw32-g++.exe: fatal error: no input files

要找出出错的地方,您应该发布您运行的命令 和完整的错误输出。


最佳,

杰克

答案 1 :(得分:1)

可能是您的输入路径设置错误或您的帐户没有权限读取“C:\ Users \ ad \ Desktop \ C ++ \ Magick ++ \ test \ main.cpp”中的文件,请检查并重试

答案 2 :(得分:0)

我认为错误发生在main的第一句:InitializeMagick(* argv),你可以调试到这个调用,可能是由argv的NULL指针引起的。

哦,不,该项目甚至没有编译! (参见错误消息)

答案 3 :(得分:0)

我认为您应该修改用于创建项目的方式。 个人,我仔细检查了如何创建项目并幸运地工作。