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

如何将Ubuntu编译的程序部署到Manjaro机器运行?

可以把Ubuntu上编译好的程序部署到Manjaro上运行,Docker确实是最稳妥的跨发行版运行方案,下面给你极简的操作步骤,不需要复杂配置:

方案一:极简Docker部署流程
    1. 在Ubuntu机器上,创建一个名为Dockerfile的文件,内容仅需两行(注意替换成你实际的程序信息):
    FROM ubuntu:22.04  # 建议使用你编译程序时的Ubuntu具体版本,避免库版本差异
    COPY myapp /usr/local/bin/
    CMD ["/usr/local/bin/myapp"]
    
    1. 在Ubuntu上构建Docker镜像(假设程序名为myapp):
    docker build -t myapp-ubuntu .
    
    1. 将镜像导出为可传输的压缩文件:
    docker save -o myapp-ubuntu.tar myapp-ubuntu
    
    1. 把myapp-ubuntu.tar文件传到Manjaro机器上,然后加载镜像:
    docker load -i myapp-ubuntu.tar
    
    1. 直接运行程序容器:
    docker run --rm myapp-ubuntu
    
    如果程序需要访问宿主机的文件或端口,添加对应参数即可:
    • 挂载宿主机目录:docker run --rm -v /path/on/manjaro:/path/in/container myapp-ubuntu
    • 映射端口:docker run --rm -p 8080:80 myapp-ubuntu
方案二:静态编译(无需Docker的替代方案)

如果你的程序支持静态编译,直接在Ubuntu上生成静态二进制文件,就能直接拷贝到Manjaro运行:

  • 编译时添加静态链接参数(以GCC为例):
    gcc -static -o myapp myapp.c
    
  • 编译完成后,用file myapp命令验证,输出包含statically linked即可直接在Manjaro上执行。
注意事项
  • 使用Docker时,务必匹配编译程序的Ubuntu版本,避免因系统库版本不一致导致程序运行失败。
  • 静态编译可能受限于依赖库的支持情况(部分动态库没有对应的静态版本),此时Docker仍是更可靠的选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 07:50:35