meson-build - meson.build:错误:文件不存在,而实际上它确实存在
问题描述
从一个简单的meson.build
文件中,我收到以下错误:
meson.build:27:0:错误:文件 dataStructures.hpp 不存在。
dataStructures.hpp,
该meson.build
文件是:
headers += [
'dataStructures.hpp',
'interface.hpp',
'platform.hpp',
'progArgs.hpp',
]
报告为丢失的文件存在,它与 meson.build 文件位于同一目录中。
如果我从列表中删除“dataStructures.hpp”字符串,第二个文件“interface.hpp”也会出现同样的错误。
我究竟做错了什么?
更多细节如下。
> CC=clang CXX=clang++ meson /dev/shm/test-build
The Meson build system
Version: 0.52.0
Source dir: /home/pietrom/myProgs/test
Build dir: /dev/shm/test-build
Build type: native build
Project name: test
Project version: 0.0.1
C++ compiler for the host machine: clang++ (clang 8.0.1 "clang version 8.0.1 (tags/RELEASE_801/final)")
C++ linker for the host machine: GNU ld.bfd 2.32
Host machine cpu family: x86_64
Host machine cpu: x86_64
src/meson.build:27:0: ERROR: File dataStructures.hpp does not exist.
A full log can be found at /dev/shm/test-build/meson-logs/meson-log.txt
在完整的日志中没有比已经报告的更多。
这是项目目录结构:
test/
meson.build
src/
meson.build
sources
config/
meson.build
sources
testers/
meson.build
sources
utilities/
meson.build
sources
解决方案
由于您没有提供所有 meson.build 文件内容,最重要的是它发生的地方 - meson.build:27:0: ERROR: File dataStructures.hpp 不存在。- 在某些 meson.build 文件中的第 27 行,我将尝试猜测您在根meson.build文件中构建可执行文件,即在test/meson.build中,但是您的标头在test/src中。如果是这种情况,您根本不需要这个标题数组,只需添加
inc = include_directories('./src')
some_test_exe = executable('mytest',
test_sources,
...
include_directories : inc
)
include_directories函数创建包含路径相对于源根目录的包含对象。
推荐阅读
- python - 如何避免在numpy中基于数组的函数内进行迭代?
- html - 与页面其余部分重叠的列表
- python - 在 Windows 8.1 上安装 PyAudio 失败
- javascript - 导入 JSON 后从特定值中删除双引号
- javascript - 是否可以在 PHP 遗留应用程序中使用 webpack 和热重建?
- swift - 在 Swift 中获取列表的第一项
- c++ - c ++尾随返回声明但没有'auto'
- r - 如何更改字体和棒棒糖大小?
- react-native - React Native 中 AsyncStorage 的顶级等待
- cobol - 将日期 DD-MMM-YYYY 转换为 cobol 中的 YYYYMMDD