Ошибка LNK2019 при попытке скомпилировать проект с использованием tmxlite

Я продолжаю получать эти ошибки:

LNK2019 неразрешенный внешний символ _mz_inflateInit, указанный в функции «bool __cdecl tmx :: распаковывать (char const *, класс std :: vector &, int, int) «(? распаковывать @ tmx @@ YA_NPBDAAV? $ vector @ EV? $ allocator @ E @ std @@@ std @@ hh @ Z)

LNK2019 неразрешенный внешний символ _mz_inflate, указанный в функции «bool __cdecl tmx :: depress (char const *, класс std :: vector> &, int, int) «(? декомпрессировать @ tmx @@ YA_NPBDAAV? $ vector @ EV? $ allocator @ E @ std @@@ std @@ HH @ Z)

LNK2019 Неразрешенный внешний символ _mz_inflateEnd, на который ссылается функция «bool __cdecl tmx :: depress (char const *, класс std :: vector> &, int, int) «(? декомпрессировать @ tmx @@ YA_NPBDAAV? $ vector @ EV? $ allocator @ E @ std @@@ std @@ HH @ Z)

когда я пытаюсь скомпилировать мой проект tmxlite. Единственные файлы исходного кода, которые у меня есть в моем проекте, это те, которые поставляются с tmxlite.

#include "stdafx.h"#include <SFML/Graphics.hpp>

#include <SFML/Graphics/RenderWindow.hpp>
#include <SFML/Window/Event.hpp>

#include <tmxlite/Map.hpp>

#include "C:\Program Files (x86)\tmxlite\SFMLExample\src\SFMLOrthogonalLayer.hpp"
#include "FreeFuncs.cpp"#include "ImageLayer.cpp"#include "Map.cpp"#include "miniz.c"#include "Object.cpp"#include "ObjectGroup.cpp"#include "Property.cpp"#include "TileLayer.cpp"#include "Tileset.cpp"#include "pugixml.cpp"
using namespace sf;

int main()
{
RenderWindow window(VideoMode(800, 600), "SFML window");

tmx::Map map;
map.load("assets/demo.tmx");

MapLayer layerZero(map, 0);
MapLayer layerOne(map, 1);
MapLayer layerTwo(map, 2);

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

window.clear(Color::Black);
window.draw(layerZero);
window.draw(layerOne);
window.draw(layerTwo);
window.display();
}

return 0;
}

Я использую Visual Studio Community 2017

-2

Решение

Добавить существующий src/tmxlite/miniz.* файлы в ваш проект. В том числе Map.* только в ваш проект недостаточно, вы должны добавить все исходные файлы в проект.

Лучше, если вы добавите существующий проект tmxlite.vcxproj в ваше решение и добавьте этот проект в зависимости вашего проекта.

Не включайте файлы .cpp в ваши источники, используя #include директивы. Добавьте их в дерево вашего проекта.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]