ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

编译–Meson没有找到Boost库

2019-08-16 22:04:38  阅读:227  来源: 互联网

标签:c boost compiling


我想用Meson构建一个新的c项目.我需要的第一件事是
Boost库的依赖项.但是虽然Boost库安装在我的Arch系统上(标题
和libs),Meson抱怨它找不到它们.

这是介子构建文件:

project('myproj', 'cpp')
boost_dep = dependency('boost')
executable('myproj', 'main.cpp', dependencies : boost_dep)

main.cpp源文件:

int main()
{
    return 0;
}

部分列出了我系统上安装的一些Boost文件:

$ls /usr/lib/libboost*|head -n5; ls /usr/include/boost/*|head -n5
/usr/lib/libboost_atomic.a
/usr/lib/libboost_atomic.so
/usr/lib/libboost_atomic.so.1.65.1
/usr/lib/libboost_chrono.a
/usr/lib/libboost_chrono.so
/usr/include/boost/aligned_storage.hpp
/usr/include/boost/align.hpp
/usr/include/boost/any.hpp
/usr/include/boost/array.hpp
/usr/include/boost/asio.hpp

我项目中的ninja命令输出:

[0/1] Regenerating build files.
The Meson build system
Version: 0.43.0
Source dir: /home/io/prog/myproj/src
Build dir: /home/io/prog/myproj/builddir
Build type: native build
Project name: myproj
Native C++ compiler: c++ (gcc 7.2.0)
Build machine cpu family: x86_64
Build machine cpu: x86_64
Dependency Boost () found: NO

Meson encountered an error in file meson.build, line 2, column 0:
Dependency "boost" not found

[...]

我错过了什么?

解决方法:

以下问题解决了我的问题:

Boost not detected on Fedora · Issue #2547

我用以下内容替换了介子构建文件:

project('myproj', 'cpp')
cxx = meson.get_compiler('cpp')
boost_dep = [
    cxx.find_library('boost_system'),
    cxx.find_library('boost_filesystem'),
]
executable('myproj', 'main.cpp', dependencies : boost_dep)

标签:c,boost,compiling
来源: https://codeday.me/bug/20190816/1671217.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有