无法在介子构建系统中获得 wrap-file 选项
Unable to get the wrap-file option in meson build system working
我正在尝试为 arm 交叉编译 glib。它依赖于 libffi,但发现 libffi 的介子构建最后一次更新是在 2 年前,可用的内容存在问题。
因此我必须定义一个包装文件来获取最新的 libffi 源。
我的第一个想法是使用如下的包装文件 -
[wrap-git]
directory=libffi
url=https://github.com/libffi/libffi
revision=head
p.s 它是具有 libffi 正确源代码的主要修订版。但它需要介子修正,而且似乎没有带头。
因此我选择了 [wrap-file] 选项,
[wrap-file]
directory = libffi-3.3
source_url = https://github.com/libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz
source_filename = libffi-3.3.tar.gz
source_hash = 72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056
但是我在构建介子时仍然遇到这个错误"Subproject exists but has no meson.build file"。
这是 glib 附带的原始包装文件。
[wrap-git]
directory=libffi
url=https://github.com/centricular/libffi.git
revision=meson
使包装文件正常工作的最简单方法是什么。
据我所知,有人分叉了项目并添加了对 meson
的支持,将该分支命名为 meson
,因此修订版只是包含 meson.build
[=18 的分支名称=]
官方项目不支持meson.build
。真正发生的是,当您构建使用 wrap git/file 的项目时,该项目是 fetched/downloaded&unzip,它会搜索 meson.build
来为您的项目构建该依赖项。
您有几个选择:
- 分叉项目并添加对介子的支持(可选:向官方项目提交 PR)
- 作为依赖安装并使用它
- 使用
conan
包管理器获取您的依赖项,您甚至可以将其与 meson
(https://conan.io/center/libffi/3.3/?user=&channel=) 集成
我正在尝试为 arm 交叉编译 glib。它依赖于 libffi,但发现 libffi 的介子构建最后一次更新是在 2 年前,可用的内容存在问题。
因此我必须定义一个包装文件来获取最新的 libffi 源。
我的第一个想法是使用如下的包装文件 -
[wrap-git]
directory=libffi
url=https://github.com/libffi/libffi
revision=head
p.s 它是具有 libffi 正确源代码的主要修订版。但它需要介子修正,而且似乎没有带头。
因此我选择了 [wrap-file] 选项,
[wrap-file]
directory = libffi-3.3
source_url = https://github.com/libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz
source_filename = libffi-3.3.tar.gz
source_hash = 72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056
但是我在构建介子时仍然遇到这个错误"Subproject exists but has no meson.build file"。
这是 glib 附带的原始包装文件。
[wrap-git]
directory=libffi
url=https://github.com/centricular/libffi.git
revision=meson
使包装文件正常工作的最简单方法是什么。
据我所知,有人分叉了项目并添加了对 meson
的支持,将该分支命名为 meson
,因此修订版只是包含 meson.build
[=18 的分支名称=]
官方项目不支持meson.build
。真正发生的是,当您构建使用 wrap git/file 的项目时,该项目是 fetched/downloaded&unzip,它会搜索 meson.build
来为您的项目构建该依赖项。
您有几个选择:
- 分叉项目并添加对介子的支持(可选:向官方项目提交 PR)
- 作为依赖安装并使用它
- 使用
conan
包管理器获取您的依赖项,您甚至可以将其与meson
(https://conan.io/center/libffi/3.3/?user=&channel=) 集成