【问题标题】:How to Compile SFML C++ Source Code From Linux to Windows on a Linux Distro?如何在 Linux 发行版上将 SFML C++ 源代码从 Linux 编译到 Windows?
【发布时间】:2012-08-11 09:00:21
【问题描述】:

我在网上搜索了 5 个小时的解决方案,但仍然无法在我的 Linux Distro (openSuSE) 上使用 SFML API 编译到 Windows。

通过调用以下命令,我可以在 openSuSE 上使用 MinGW 编译器毫无问题地编译非 SFML 应用程序:

i686-w64-mingw32-g++ Main.cpp

但是,每当我编译这样一个 SFML 程序时:http://www.sfml-dev.org/tutorials/1.6/start-cb.php

我收到此错误:fatal error: SFML\System.hpp: No such file or directory

我试过了: i686-w64-mingw32-g++ Main.cpp -L /home/user/Downloads/SFML1.6/lib -lsfml-system

但我仍然遇到同样的错误。

我的 IDE 是 Eclipse Juno,我在可选功能中安装了用于 CDT 跨平台开发的工具链支持。同样,尝试使用 Eclipse,我的程序编译没有任何问题,而不使用 SFML API。但是,一旦我使用 SFML 编译程序,就会出现错误。是的,它使用 GNU G++ 和 SFML。我尝试的是从下载页面下载适用于 Windows 的 SFML 并编译(这是我之前展示的),但它仍然无法正常工作。

【问题讨论】:

  • 你有没有尝试为-I传递一些东西?
  • SFML 库是 Linux 还是 Windows 二进制文件?
  • 不,我没有为“-I”传递一些东西,我应该为 -I 参数输入什么?
  • SFML 库是 Windows 二进制文件,它在我的 Downloads 文件夹中,而我的 Linux 二进制文件 SFML 在 /usr/local/lib 和 /usr/local/include/ 中。
  • -I 是预处理器查找标头的关键。

标签: c++ windows linux cross-platform sfml


【解决方案1】:

错误是抱怨SFML\System.hpp。请注意其中的反斜杠。即使您的目标是 Windows 平台,头文件仍应使用正斜杠。

【讨论】:

  • 我正在使用正斜杠来包含我的头文件。
猜你喜欢
  • 2016-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 2016-06-12
  • 1970-01-01
相关资源
最近更新 更多