Closed ekse closed 5 years ago
Thank you so much for the detailed bug report! I have looked at the issues you mentioned and it seems like I can use a workaround and keep the --release
flag. I am working on it, but it may take a while until I push the fix.
I think I fixed both issues :)
The linker error is “fixed” by using the gold
linker instead, if it's available. It's a hack, but it seems to work for now. The segfault was caused by the omission of frame pointers when Rust code is compiled on some platforms, which broke the__builtin_return_address
function. It should be fixed by compiling with -force-frame-pointers
.
So in short, the tests are now compiled with two more options: -Clink-arg=-fuse-ld=gold
and -Cforce-frame-pointers=yes
.
I am sorry I did not test fuzzcheck on Linux before, I will add continuous integration tests with travis soon to make sure it always works in the future.
Could you please verify that you can run the example now?
Thanks! :)
It works as expected now, thanks a lot for the fixes. I assume you usually test on macOS?
Yes, I mostly test on macOS. I have a Linux docker container to test it on my machine now though, so I can test both easily :)
Hi,
I ran into the following linking error while trying to build the sample fuzzer from the README.
My system:
There is an open ticket for similar error in cargo-fuzz, it seems to be apearing when compiling with optimizations.
https://github.com/rust-fuzz/cargo-fuzz/issues/161 https://github.com/rust-lang/rust/issues/53945
I did a test where I removed the
--release
flag in cargo-fuzz/main.rs, but then I get segfaults of child processes when trying to start the fuzzer.