diff --git a/epwing.go b/epwing.go index 98bfd87..0647735 100644 --- a/epwing.go +++ b/epwing.go @@ -78,14 +78,17 @@ func epwingExportDb(inputPath, outputPath, language, title string, stride int, p var data []byte if toolExec { + exePath, err := os.Executable() + if err != nil { + return err + } + toolPath := filepath.Join("bin", runtime.GOOS, "zero-epwing") if runtime.GOOS == "windows" { toolPath += ".exe" } - if toolPath, err = filepath.Abs(toolPath); err != nil { - return err - } + toolPath = filepath.Join(filepath.Dir(exePath), toolPath) if _, err = os.Stat(toolPath); err != nil { return fmt.Errorf("failed to find zero-epwing in '%s'", toolPath)