我正在尝试将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;
}
答案 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)
我认为您应该修改用于创建项目的方式。 个人,我仔细检查了如何创建项目并幸运地工作。