Closed AlexNav73 closed 6 years ago
Libclang is used by bindgen to generate the bindings (in the minimp3-sys crate). This way we don't have to put an ugly auto-generated file in source control...
If you don't want or can't install libclang, You can also try to [patch]
minimp3-sys and include the generated bindings in the source. I can help if you need it.
Oh, that would be great, if you do like in rusqlite.
As of rusqlite 0.10.1, we avoid running bindgen at build-time by shipping pregenerated bindings for several versions of SQLite. When compiling rusqlite, we use your selected Cargo features to pick the bindings for the minimum SQLite version that supports your chosen features. If you are using libsqlite3-sys directly, you can use the same features to choose which pregenerated bindings are chosen: min_sqlite_version_3_6_8 - SQLite 3.6.8 bindings (this is the default) min_sqlite_version_3_6_11 - SQLite 3.6.11 bindings min_sqlite_version_3_6_23 - SQLite 3.6.23 bindings min_sqlite_version_3_7_3 - SQLite 3.7.3 bindings min_sqlite_version_3_7_4 - SQLite 3.7.4 bindings
I think it can help others use this crate and do not to create forks with generated bindings. As a windows user, I will very appreciate that.
Or, if you absolutely don't want to pregenerate bindings, just put in the README.md a requirement for the Clang.
Hi, I just published 0.3
of minimp3
to crates-io. Could you try it with rodio? It should remove the dependency with bindgen.
Hi, now it compiles and perfectly works, awesome!! Thank you! I'll close this issue and make a PR to rodio with a version bump
Hi, I try to compile the
rodio
crate withmp3
feature enabled which usesminimp3
crate, but building fails with this errorIs it really nessesary to compile c++ lib with
clang
not with the default compiler? In my case, with Visual Studio 2017 Build tools