| | |
| | | cmd := exec.CommandContext(ctxt, bin, args...) |
| | | rEnv := "" |
| | | if len(env) != 0 { |
| | | rEnv = "LD_LIBRARY_PATH=" + env |
| | | runtime := "LD_LIBRARY_PATH" |
| | | rEnv = runtime + "=" + env |
| | | logo.Infoln("Env String: ", rEnv) |
| | | |
| | | // remove os environ ld |
| | | old := os.Getenv(runtime) |
| | | os.Unsetenv(runtime) |
| | | cmd.Env = os.Environ() |
| | | cmd.Env = append(cmd.Env, rEnv) |
| | | os.Setenv(runtime, old) |
| | | } |
| | | |
| | | pid := -1 |
| | | cmd.Stdout = os.Stdout |
| | | cmd.Stderr = os.Stderr |
| | | cmd.SysProcAttr = &syscall.SysProcAttr{Pdeathsig: syscall.SIGTERM} |
| | | |
| | | err := cmd.Start() |
| | | if err == nil { |
| | | pid = cmd.Process.Pid |