Code::Blocks, C++, magick++ любая демонстрация приводит к: mingw32-g++. Exe: фатальная ошибка: нет входных файлов

Я пытаюсь использовать 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" в той же папке, что и проект.

Спасибо

Исходный код от магии ++ 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 ответа

Решение

Возможно, в качестве входного пути задана ошибка или у вашей учетной записи нет прав на чтение файла в "C:\Users\ad\Desktop\C++\Magick++\test\main.cpp", проверьте его и попробуйте снова


Привет,

проблема не в отсутствующем "wall.jpg", а в процессе компиляции (создание исполняемого двоичного файла), как показано в примере:

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

Чтобы выяснить, что происходит не так, вы должны опубликовать команду, которую вы выполняете, и полный вывод ошибок.


Лучший,

Джек

Я думаю, что ошибка произошла в первом предложении main:InitializeMagick(*argv), вы можете отладить этот вызов, возможно, это вызвано указателем NULL аргумента argv.

О, нет, проект даже не скомпилирован! (см. сообщение об ошибке)

Я думаю, что вы должны пересмотреть способ, которым вы использовали для создания своего проекта. Лично я дважды проверил, как создать проект, и, к счастью, работал.

Другие вопросы по тегам