如何配置 CodeLite IDE 以使用 C++ 和 SFML 库? (Windows/Linux) 配置完成解决方案
How to configure CodeLite IDE to use C++ and SFML library? (Windows/Linux) Configuration complete solution
如何配置“CodeLite”IDE 以便能够使用库 SFML 在 C++ 中进行开发?
以下是我的完整解决方案...
尽情享受
此完整解决方案在 Windows 中进行了描述,但这也适用于 Linux
1) SFML 网站上的下载(下载部分):
https://www.sfml-dev.org/download/sfml/2.5.1/
- 需要的编译器
- 对应的SFML库
关注:
- 编译器名称(此处为 MinGW)
- 编译器版本(这里是7.3.0)
- 编译目标环境(这里是32位)
编译器和SFML的版本必须100%匹配!!!
2)将编译器目录和SMFL目录复制到硬盘
3) 在CodeLite中定义编译器
从顶部菜单“Settings/Build 设置...”
4) 创建项目
5) 定义项目的编译器
- 右击项目
- 选择“设置...”
- 在常规部分 -> 选择编译器
6)编译器设置(项目内)
在“编译器”部分...
- 定义“包含路径”=
C:\SFML-2.5.1\include
- “预处理器”=
SFML_STATIC
7) 链接器设置(在项目内)
在“链接器”部分...
- 定义“库搜索路径”=
C:\SFML-2.5.1\lib
- “图书馆”=
sfml-graphics
sfml-window
sfml-audio
sfml-network
sfml-system
8) 在工程中添加如下代码(测试用)
#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;
}
9) 编译工程
这不会编译,因为您必须 copy/paste 将一些 .dll 文件放入编译文件夹
10) 添加Dll到bin目录
- 编译后的可执行文件
- 来自“C:\mingw32\bin”的文件“libstdc++-6.dll”
- 来自“C:\SFML-2.5.1\bin”的所有 Dll“=26=]
信息:需要一些额外的 .dll 文件(最终需要一些来自编译器目录的 /bin)
11) 重新编译
12) 执行
如果有效...
13) 尽情享受吧!!!
如何配置“CodeLite”IDE 以便能够使用库 SFML 在 C++ 中进行开发?
以下是我的完整解决方案...
尽情享受
此完整解决方案在 Windows 中进行了描述,但这也适用于 Linux
1) SFML 网站上的下载(下载部分):
https://www.sfml-dev.org/download/sfml/2.5.1/
- 需要的编译器
- 对应的SFML库
关注:
- 编译器名称(此处为 MinGW)
- 编译器版本(这里是7.3.0)
- 编译目标环境(这里是32位)
编译器和SFML的版本必须100%匹配!!!
2)将编译器目录和SMFL目录复制到硬盘
3) 在CodeLite中定义编译器
从顶部菜单“Settings/Build 设置...”
4) 创建项目
5) 定义项目的编译器
- 右击项目
- 选择“设置...”
- 在常规部分 -> 选择编译器
6)编译器设置(项目内)
在“编译器”部分...
- 定义“包含路径”=
C:\SFML-2.5.1\include
- “预处理器”=
SFML_STATIC
7) 链接器设置(在项目内)
在“链接器”部分...
- 定义“库搜索路径”=
C:\SFML-2.5.1\lib
- “图书馆”=
sfml-graphics sfml-window sfml-audio sfml-network sfml-system
8) 在工程中添加如下代码(测试用)
#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;
}
9) 编译工程
这不会编译,因为您必须 copy/paste 将一些 .dll 文件放入编译文件夹
10) 添加Dll到bin目录
- 编译后的可执行文件
- 来自“C:\mingw32\bin”的文件“libstdc++-6.dll”
- 来自“C:\SFML-2.5.1\bin”的所有 Dll“=26=]
信息:需要一些额外的 .dll 文件(最终需要一些来自编译器目录的 /bin)
11) 重新编译
12) 执行
如果有效...