windows - 在 Windows 上的 Meson 构建中链接到现有的`.lib` 文件
问题描述
我正在Meson Build中构建一个简单的项目。
尽管在 Meson Build Documentation 中如何创建依赖项(隐含 UNIX / LINUX 系统的假设)有详细记录,但不清楚如何链接任意非路径库。
让我们在 Windows 上有以下项目:
- ProjectFolder
- SrcFiles
- SrcFile1.c
- SrcFile2.c
- Lib
- MyLib1.lib
- MyLib2.lib
我想创建一个基于SrcFile1.c
和的可执行文件,SrcFile2.c
它与预构建 MyLib1.lib
的和MyLib2.lib
.
这样做的正确方法是什么?
解决方案
好的,我在 MesonBuild 上找到了解决方案:如何定义对无法找到的库的依赖pkg-config
?关于Yasushi Shoji 的回答。
该dirs
属性的唯一问题需要绝对路径。
因此,这是可以做什么的草图:
# Constants
projectDir = meson.current_source_dir() # MESON_SOURCE_ROOT
buildDir = meson.current_build_dir() # MESON_BUILD_ROOT
lib1Path = join_paths(projectDir, 'Lib')
lib2Path = join_paths(projectDir, 'Lib')
objCCompiler = meson.get_compiler('c')
MyLib1 = objCCompiler.find_library('MyLib1', dirs : lib1Path)
MyLib2 = objCCompiler.find_library('MyLib1', dirs : lib1Pat2)
现在只需使用适当的依赖项定义目标构建。
推荐阅读
- php - PHP - JWT 获取令牌错误的段数
- json - 在我的 Tweepy 流 JSON 文件中找不到转推
- c# - 解密 AES 加密文件的选择性部分
- php - 如何对传入的 PHP 帖子进行排队
- sparql - sparql rdfs:range 不返回任何内容
- python - 在 Django views.py 中转换缩略图后如何将缩略图保存到 default_storage(AWS S3)?
- python - 如何让 n 个进程在 Python 2.7 中长度不同的作业列表上运行?
- java - 如何在Java中一次停止点击多个按钮(使用其他一些Jbutton)
- r - 如何使用 r 按列添加 excel 工作表
- r - 如何保存自定义(仅保留下三角形)ggpairs图?