You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Dune配置将OCaml可执行文件安装到指定目录并去除.exe后缀?

修改Dune配置实现无.exe后缀并指定安装目录

一、核心配置修改

直接调整你的Dune文件,添加public_name字段和install stanza即可满足需求:

(executable
 (name myapp)
 (libraries unix)
 (public_name myapp)) ; 指定安装后的可执行文件名,避免自动添加.exe后缀

(install
 (section bin)
 (files %{bin:myapp})
 (prefix /usr/local)) ; 设置安装前缀,最终可执行文件会被安装到/usr/local/bin目录

二、各配置项说明

  1. 去掉.exe后缀
    在executable块中添加(public_name myapp),Dune在安装阶段会直接使用这个名称作为最终可执行文件名,不会自动追加.exe(类Unix系统默认不会生成带.exe的文件,Windows环境下该配置也能强制去掉后缀,但需注意Windows对无.exe可执行文件的兼容性)。

  2. 指定安装目录到/usr/local/bin

    • 通过(install) stanza的(prefix /usr/local)设置前缀,结合(section bin),可执行文件会被安装到/usr/local/bin路径下。
    • 若不想修改Dune文件,也可以在执行安装命令时手动指定前缀:
      dune install --prefix /usr/local
      

三、dune build直接复制到指定目录的方案

如果希望执行dune build后直接将可执行文件复制到目标目录,可以添加自定义alias配置:

(executable
 (name myapp)
 (libraries unix)
 (public_name myapp))

(alias
 (name install-local) ; 自定义别名,可按需修改
 (deps %{bin:myapp})
 (action (copy %{bin:myapp} /usr/local/bin/myapp)))

执行以下命令即可完成复制:

dune build @install-local

内容的提问来源于stack exchange,提问作者user22288295

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 22:22:47