SFML Visual Studio 2013 - 项目不会编译

时间:2014-09-15 15:12:57

标签: c++ sfml

我在使用SFML库编译项目时遇到问题。之前我甚至尝试用Cmake自己编译库的源代码,但是遇到了其他问题并且所有的库都没有编译。因为我已经为vc11,x64下载了已编译的库SFML2.1并将它们添加到项目属性中,但我收到了类似的奇怪错误:

 Error  5   error LNK1120: 4 unresolved externals   C:\Users\Konrad\Documents\Visual Studio                  2013\Projects\Komparator cen ASG\Debug\Komparator cen ASG.exe  Komparator cen ASG
 Error  4   error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Http::~Http(void)" (__imp_??1Http@sf@@QAE@XZ) referenced in function _main  C:\Users\Konrad\Documents\Visual Studio 2013\Projects\Komparator cen ASG\Komparator cen ASG\Main.obj    Komparator cen ASG
 Error  3   error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Http::Http(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned short)" (__imp_??0Http@sf@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@G@Z) referenced in function _main    C:\Users\Konrad\Documents\Visual Studio 2013\Projects\Komparator cen ASG\Komparator cen ASG\Main.obj    Komparator cen ASG
 Error  2   error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Http::Request::~Request(void)" (__imp_??1Request@Http@sf@@QAE@XZ) referenced in function _main  C:\Users\Konrad\Documents\Visual Studio 2013\Projects\Komparator cen ASG\Komparator cen ASG\Main.obj    Komparator cen ASG
 Error  1   error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Http::Request::Request(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,enum sf::Http::Request::Method,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_??0Request@Http@sf@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4Method@012@0@Z) referenced in function _main   C:\Users\Konrad\Documents\Visual Studio 2013\Projects\Komparator cen ASG\Komparator cen ASG\Main.obj    Komparator cen ASG

我尝试编译代码:

  #include <SFML/Network/Http.hpp>
  #include <string.h>

 using namespace std;

 int main()
 {
     string www = "http://www.gunfire.pl/";
     sf::Http site("http://www.gunfire.pl/");

     sf::Http::Request request(www);
     //request.setUri(www);
     request.Get;

     return 0;
 }

我知道这可能听起来很奇怪但是我试图在VS13上运行SFML库很多次并且已经浪费了很多时间。

1 个答案:

答案 0 :(得分:0)

您可以使用为VS2012(VC11)编译的库在VS2013中编译项目。 但 当你到达Graphics.draw()时,你会遇到问题,因为SFML版本不是为2013年构建的。

&#34;未解决的外部符号&#34;是我面临的症状之一。

不幸的是,它很简单。如果您想将它用于VS2013,您必须按照自己的说法自行编译。

不幸的是,Againg在2013年存在一些阻止您构建静态库的错误。

据我所知,目前还没有针对VS2013构建SFML 2.1的解决方案。如果有,我会非常感兴趣。