-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
I'm using the latest version of CMake on Arch Linux and I'm getting the following error:
$ cmake -B build -S . -G Ninja
[output omitted]
$ ninja -C build
ninja: Entering directory `build/'
[0/1] Re-running CMake...
-- Checking for module 'mpv'
-- Package 'mpv' not found
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/samvv/Projects/dvd_info/build
[2/9] Building C object CMakeFiles/dvd_info.dir/dvd_info.c.o
FAILED: CMakeFiles/dvd_info.dir/dvd_info.c.o
/usr/bin/cc -MD -MT CMakeFiles/dvd_info.dir/dvd_info.c.o -MF CMakeFiles/dvd_info.dir/dvd_info.c.o.d -o CMakeFiles/dvd_info.dir/dvd_info.c.o -c /home/samvv/Projects/dvd_info/dvd_info.c
/home/samvv/Projects/dvd_info/dvd_info.c:9:10: fatal error: config.h: No such file or directory
9 | #include "config.h"
| ^~~~~~~~~~
compilation terminated.
[3/9] Building C object CMakeFiles/dvd_backup.dir/dvd_backup.c.o
FAILED: CMakeFiles/dvd_backup.dir/dvd_backup.c.o
/usr/bin/cc -MD -MT CMakeFiles/dvd_backup.dir/dvd_backup.c.o -MF CMakeFiles/dvd_backup.dir/dvd_backup.c.o.d -o CMakeFiles/dvd_backup.dir/dvd_backup.c.o -c /home/samvv/Projects/dvd_info/dvd_backup.c
/home/samvv/Projects/dvd_info/dvd_backup.c:22:10: fatal error: config.h: No such file or directory
22 | #include "config.h"
| ^~~~~~~~~~
compilation terminated.
[4/9] Building C object CMakeFiles/dvd_copy.dir/dvd_copy.c.o
FAILED: CMakeFiles/dvd_copy.dir/dvd_copy.c.o
/usr/bin/cc -MD -MT CMakeFiles/dvd_copy.dir/dvd_copy.c.o -MF CMakeFiles/dvd_copy.dir/dvd_copy.c.o.d -o CMakeFiles/dvd_copy.dir/dvd_copy.c.o -c /home/samvv/Projects/dvd_info/dvd_copy.c
/home/samvv/Projects/dvd_info/dvd_copy.c:21:10: fatal error: config.h: No such file or directory
21 | #include "config.h"
| ^~~~~~~~~~
compilation terminated.
ninja: build stopped: subcommand failed.
I'm guessing that something changed again in CMake, requiring (according to the example in the docs):
configure_file("config.h.in" "config.h")
+include_directories("${CMAKE_CURRENT_BINARY_DIR}")
Alternatively one must use target_include_directories
on every target.
If you want I can fire up a pull request to fix it.
Metadata
Metadata
Assignees
Labels
No labels