meson+ninja编译libfuse-3.2.3

使用开源框架libfuse时,参照README来编译libfuse一直没有成功;查了一些资料,最后总算是编译成功;以此记录,方便以后查看或者其他需要的朋友。

//git clone libfuse
# git clone https://github.com/libfuse/libfuse

//git clone meson
# git clone https://github.com/mesonbuild/meson

//git clone ninja
# git clone git://github.com/ninja-build/ninja.git
//进入ninja目录
# cd ninja
# git checkout release
# ./configure.py
//当前目录下产生的ninja 拷贝到/usr/bin (方便下一步用)

//进入 meson目录
# cd meson

//meson目录下有个可执行文件meson.py
//meson 根据libfuse目录下的meson.build 在当前目录下生成 build.ninja
//在lib目录下生成libfuse3
# ./meson.py /home/xxx/libfuse
//ninja根据build.ninja 生成fusermount3
# ninja

至此,编译libfuse完成  meson目录下lib和util产生libfuse3和fusemount3.

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当你看到 `meson install --no-rebuild` 命令后跟着 `ninja: build stopped: subcommand failed.` 这样的错误信息,通常意味着 Meson 构建系统在尝试安装(构建)过程中遇到了问题。Meson 是一种跨平台的构建系统,而 NinjaMeson 默认的构建工具。 `--no-rebuild` 参数表示不自动重新构建项目,如果项目已经存在或不需要更新,这个选项可能会被用到。然而,`subcommand failed` 提示说明某个子命令执行失败了,可能是由于源代码的问题、配置错误、依赖的问题或是环境设置不对等原因导致的。 解决这个问题,你可以按照以下步骤操作: 1. **检查日志**:查看 MesonNinja 的构建日志文件(通常是 `.mesonlogs` 或者 `logs` 文件夹下),找出具体的错误消息,这可能包含关于出错的具体原因。 2. **确认依赖**:检查所有依赖项是否已正确安装和配置。如果有第三方的依赖,确保它们满足项目的版本需求。 3. **修复错误**:根据日志中的提示,定位并修复源代码中的错误,比如语法错误、缺失的头文件或其他编译错误。 4. **清理并重建**:如果 `--no-rebuild` 不适用,尝试完全清除旧的构建目录 (`meson clean`),然后重新运行 `meson install` 来完整构建项目。 5. **更新环境**:确认开发环境变量(如 PATH、include路径等)设置正确,并且没有冲突。 6. **寻求帮助**:如果问题依然无法解决,可以在相关的开发者社区或论坛上提问,提供详细的错误信息和你的环境描述。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值