Неразрешенный внешний символ: LNK 2001

Я только что установил пакеты SFML с помощью диспетчера пакетов NuGET. После его установки. Я запустил базовую программу с ее официальной страницы. Просто скопируйте и вставьте.

#include <SFML/Graphics.hpp>

int main()
{
    sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
    sf::CircleShape shape(100.f);
    shape.setFillColor(sf::Color::Green);

    while (window.isOpen())
    {
        sf::Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
        }

        window.clear();
        window.draw(shape);
        window.display();
    }

    return 0;
}

Когда я запускаю это, я получаю ошибку LNK 2001. Указание неразрешенного внешнего символа.

Моя собственная ПОПРОБОВАТЬ

Я поискал в Google и обнаружил, что проблема в файлах lib. Я нашел файлы в папке пакета, ни один из них не указан в инструментах Project-> Properties.

Пробовал добавить SFML_DYNAMIC, не сработало;


person Kishan Kumar    schedule 08.12.2015    source источник


Ответы (1)


Вам необходимо добавить соответствующие библиотеки в зависимости компоновщика в вашем проекте. Добавьте имена библиотек в Project-> Properties-> Linker-> Input-> Additional Dependencies.

Вот руководство по SFML по настройке проекта Visual Studio.

person Paul    schedule 08.12.2015
comment
Теперь он говорит, что невозможно открыть sfml-graphics.lib, затем попробовал sfml-graphics-d.lib, затем попробовал -s, а затем -s-d.lib. Ни один из них не работал - person Kishan Kumar; 08.12.2015
comment
И я не собираюсь устанавливать SFML в свою систему. Я хочу установить его только в этот проект. - person Kishan Kumar; 08.12.2015
comment
Если он не может найти библиотеки, вам также необходимо указать путь к библиотекам в Linker- ›General-› Additional Library Directories. - person Paul; 08.12.2015
comment
Это тоже хорошо работает, когда я сам устанавливаю SFML. Но с NuGet он устанавливает все SFML в разные каталоги. - person Kishan Kumar; 08.12.2015