Could someone (that uses Linux) perhaps try and emulate my bug to see if it's an issue with the bindings or on my system? That would be greatly appreciated!

Steps:

1. Open up the terminal and type in `sudo apt-get install libcsfml-dev`

2. Create a new D project and add the following to `dub.json`:

```
"dependencies": {
        "bindbc-sfml": "~>1.0.2",
        "bindbc-loader": "~>1.0.1"
},
"versions": [
        "SFML_Audio",
        "SFML_Graphics",
        "SFML_250"
],
```

3. Add the following code to `app.d`:

```D
import std.stdio;
import bindbc.sfml;
import std.string;
import std.exception;
import bindbc.loader;
import std.conv;

void loadDyn() {
        if (!loadSFML()) {
                string[] messages;

                foreach (const(ErrorInfo) err; errors) {
                        string errorStr = to!string(err.error);
                        string messageStr = to!string(err.message);

messages ~= format("Error: %s, Message: %s", errorStr, messageStr);
                }

throw new Exception(format("Fatal error(s) encountered whilst calling `loadSFML()` function: %s", messages));
        }
}

void main() {
        loadDyn();

sfRenderWindow* renderWindow = sfRenderWindow_create(sfVideoMode(500, 500), "Snake Smooth Dynamics", sfWindowStyle.sfDefaultStyle, null);
        sfEvent event;

        while (renderWindow.sfRenderWindow_isOpen()) {
                while (renderWindow.sfRenderWindow_pollEvent(&event)) {
                        if (event.type == sfEventType.sfEvtClosed) {
                                renderWindow.sfRenderWindow_close();
                        }
                }

                renderWindow.sfRenderWindow_clear(sfYellow);
                renderWindow.sfRenderWindow_display();
        }
}
```

It should only take around 2-3 minutes.

Regards,
thebluepandabear


Reply via email to