update compilation to Cargo build system