Open orangeC23 opened 1 year ago
The wasm file is : uutils-wasm.txt The go file is :
package main import ( "fmt" wasmer "github.com/wasmerio/wasmer-go/wasmer" "io/ioutil" ) func main() { // os.Chdir(filepath.Dir(os.Args[0])) wasmBytes, _ := ioutil.ReadFile("./uutils.wasm") store := wasmer.NewStore(wasmer.NewEngine()) module, _ := wasmer.NewModule(store, wasmBytes) wasiEnv, _ := wasmer.NewWasiStateBuilder("uutils"). // Choose according to your actual situation Argument("mv dir/foo dir/bar"). // Environment("ABC", "DEF"). MapDirectory("./dir", "./dir"). Finalize() if store == nil { fmt.Println("store is null") } if module == nil { fmt.Println("module is null") } importObject, err := wasiEnv.GenerateImportObject(store, module) check(err) instance, err := wasmer.NewInstance(module, importObject) check(err) start, err := instance.Exports.GetWasiStartFunction() check(err) start() } func check(e error) { if e != nil { panic(e) } }
go run tmp.go
mv dir/foo to dir/bar
It prints mv dir/foo dir/bar: applet not found and do not move. Did I write wrong code?
mv dir/foo dir/bar: applet not found
Summary
The wasm file is : uutils-wasm.txt The go file is :
Additional details
Expected behavior
mv dir/foo to dir/bar
Actual behavior
It prints
mv dir/foo dir/bar: applet not found
and do not move. Did I write wrong code?