C++ и SDL: почему я не могу скомпилировать эту программу?

По какой-то причине я не могу скомпилировать эту программу, потому что у меня якобы отсутствует SDL. Он отлично компилируется в режиме отладки, но не в режиме выпуска. Я использую Visual C++ 2010. Я связал SDL с каталогами VC++. Вот мой (маленький) код.

//main.cpp
#include "main.h"

void logger::log(string logging)
{
    file << logging << "\n";
}

int main(int argc, char* argv[])
{
    logger logObj;
        logObj.log("uShootZombies started.");

    SDL_Init(SDL_INIT_EVERYTHING);
        logObj.log("SDL initalized.");

    SDL_Quit();
        logObj.log("SDL quit.");

    return 0;
}


//main.h
#include <SDL.h>
#include <fstream>
#include <string>

using namespace std;

class game
{
    public:
    private:
};

class logger
{
    public:
    void log(string logging);
    logger()
    {
        file.open("Log.txt", ios::out);
    }

    ~logger()
    {
        file.close();
    }
    private:
    ofstream file;
};

Что я делаю неправильно? Если вам нужна дополнительная информация, просто спросите. ;)


person Lemmons    schedule 11.11.2010    source источник
comment
В Visual Studio разные конфигурации (отладка, выпуск, разные процессоры) имеют разные настройки. Несмотря на то, что вы добавили правильные каталоги и библиотеки для отладки, вы должны внести те же изменения для выпуска, чтобы он правильно скомпилировался.   -  person Chris Schmich    schedule 12.11.2010
comment
Вы уверены, что связываетесь с библиотекой SDL в обе конфигурации (отладка и выпуск)?   -  person icecrime    schedule 12.11.2010


Ответы (2)


Убедитесь, что вы добавили ссылки на свои библиотеки в режим выпуска, а также в режим отладки. Я не уверен на 100% в SDL, но некоторые сторонние библиотеки поставляются с двумя вариантами: отладка и выпуск. Я считаю, что вам придется настроить режим выпуска IDE с режимом выпуска файлов библиотеки.

person nathan    schedule 11.11.2010

Откройте свойства проекта и убедитесь, что вы связываетесь с библиотекой SDL как в конфигурациях отладки, так и в конфигурациях выпуска: в верхнем левом углу диалогового окна свойств есть поле со списком, где вы можете выбрать конфигурацию для редактирования.

person icecrime    schedule 11.11.2010