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

如何在Meson构建系统中添加链接器命令行选项

Meson构建系统添加链接器选项(rpath配置方案)

要在Meson中添加-Wl,-rpath=/usr/local/lib这类链接器选项,保证程序运行时正确加载依赖,可按实际场景选择以下方案:

方案1:针对单个构建目标设置(最推荐)

仅对指定的可执行文件/共享库生效,不会污染其他目标的编译配置,在meson.build中对应目标的配置项添加link_args参数即可:

executable(
    'myapp',
    'main.cpp',
    link_args : ['-Wl,-rpath=/usr/local/lib']
)

如果是给共享库添加配置,将executable替换为shared_library即可。

方案2:当前项目所有目标全局生效

如果项目内所有构建产物都需要该rpath配置,可在项目根目录的meson.build开头添加全局链接参数配置:

# 针对C语言目标生效,C++可将language参数改为'cpp',其他语言对应修改前缀即可
add_project_link_arguments('-Wl,-rpath=/usr/local/lib', language: 'c')

方案3:使用Meson原生rpath配置(更规范)

针对安装后运行时的rpath需求,Meson提供了原生的install_rpath参数,无需手动写-Wl前缀,会自动处理跨平台兼容,写法更简洁:

executable(
    'myapp',
    'main.cpp',
    install: true,
    # 支持多个rpath路径用逗号分隔
    install_rpath: '/usr/local/lib'
)

临时测试:命令行传递参数

如果只是临时测试不需要修改meson.build文件,可在执行meson setup时直接传递链接参数:

# C++项目示例,C语言项目将cpp_link_args改为c_link_args即可
meson setup builddir -Dcpp_link_args="-Wl,-rpath=/usr/local/lib"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 12:06:00