When I delete the .so files in the priv/native/ folder, then the following mix test invocation will error that they are not found:
error: module ErasureCoding.Native is not loaded and could not be found
β
3 β doctest ErasureCoding.Native
β ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
β
ββ test/bindings/erasure_coding_test.exs:3: Bindings.ErasureCoding.Test (module)
20:57:18.167 [warning] The on_load function for module Elixir.ErasureCoding.Native returned:
{:error,
{:load_failed,
~c"Failed to load NIF library: 'dlopen(... 'graymatter/priv/native/liberasure_coding.so' (no such file)'"}}
To my NIF module here. Is this expected or could maybe Rustler already generate this attribute in its derive macro?
Having it auto recompile in these cases helps when Ctrl-C-ing the build or in CI where caching does not restore everything.
Hopefully this is easy to reproduce, otherwise I will make an example project.
Hey thanks for the project, really useful π
When I delete the
.so
files in thepriv/native/
folder, then the followingmix test
invocation will error that they are not found:I got around this by adding:
To my NIF module here. Is this expected or could maybe Rustler already generate this attribute in its derive macro?
Having it auto recompile in these cases helps when Ctrl-C-ing the build or in CI where caching does not restore everything. Hopefully this is easy to reproduce, otherwise I will make an example project.