dascandy / evoke

Magic build tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`evoke_make` didn't build itself

mattgodbolt opened this issue · comments

I ran bin/evoke_main from the top level evoke directory (just after building it with make). It compiled (yay!) but failed to link, as it seemingly didn't find the dependency on boost. I'd hope it could build itself :)

$ bin/evoke_make 
Unknown header: boost/filesystem.hpp
4 concurrent tasks, 1 active, 17 commands left to run
[evoke            ] [                 ] [                 ] [                 ] 
Error while running command for evoke:
$ g++ -pthread -o bin/evoke obj/evoke/src/Executor.cpp.o obj/evoke/src/main.cpp.o -Llib -Wl,--start-group -ltoolsets -lproject -Wl,--end-group -lfw
/usr/bin/ld: obj/evoke/src/Executor.cpp.o: in function `Executor::RunMoreCommands()::{lambda(Task*)#1}::operator()(Task*) const':
Executor.cpp:(.text+0x377): undefined reference to `boost::filesystem::path::filename() const'
/usr/bin/ld: obj/evoke/src/Executor.cpp.o: in function `Executor::RunMoreCommands()':
...

I installed boost using apt, and the make process found it ok.

This is a result of not knowing Boost at this point. I've commented out where it would invoke Accio to get a package, but it should be integrated with pkg-config to retrieve local build information.

I've added the boost information to the local hook so now it should just work.