Crate sfml

source · []
Expand description

Rust bindings for SFML, the Simple and Fast Multimedia Library.


  • Linux, Windows, or OS X
  • Rust 1.60 or later
  • SFML 2.5
  • A C++ compiler for building CSFML

Environment variables

If you get errors about SFML headers not being found, or linker errors, that probably means SFML is not installed in a global location. In that case, you can set two environment variables to help rust-sfml find the required files:

  • SFML_INCLUDE_DIR. Set this to the include folder of your SFML location.
  • SFML_LIBS_DIR. Set this to the lib folder of your SFML location.

!! Thread safety warning !!

rust-sfml strives to be memory-safe, as a Rust library should be, but currently there is no clear plan on how to solve thread-safety issues. You should be fine as long as you only use SFML on the main thread, but as soon as you try to call into SFML from another thread, you are on your own.


This software is a binding of the SFML library created by Laurent Gomila, which is provided under the Zlib/png license.

This software is provided under the same license than the SFML, the Zlib/png license.


Sounds, streaming (musics or custom sources), recording, spatialization
2D graphics module: sprites, text, shapes..
Base module of SFML, defining various utilities.
Provides OpenGL-based windows, and abstractions for events and input handling.


Error when failing to load an SFML resource.
An owning pointer to an SFML-allocated object.


A resource handed out to us by SFML

Type Definitions

Result for loading an SFML resource