Where do I put an include path for header-only templates?

I’m now using Unreal 5.1 and I have an ongoing project. I’d like to include some things from Boost and I’m trying to avoid breaking up my development by having some things built into sub libraries — it really seems that the glue required would be a waste — especially since the Iterators from Unreal should probably work with the templates in Boost.

Anyways, I’ve got Boost sitting in d:\Boost\boost_version. At first I tried editing the Vistual Studio VC++ Directories properties. That did not go well. Then I tried (based on something I read) editing the NMake properties. Nope.

Then I tried creating a plugin, and using the Boost.Build.cs (created by creating a blank boost plugin) and it’s PublicIncludePaths.AddRange() bit. I tried putting “D:/Boost/boost_version” in there and I tried other things. Interestingly, without the drive letter, it seemed to be starting inside d:\Epic\UE_5.1\Engine\Build … so I stuck a simlink in there called boost_version and tried to parley that.

I even tried sucking Boost (all of it) into the boost project I created — but unreal seemed to want to own (and compile) all of that — which is also not the right answer.

To be specific, I want to #include <boost/spirit/include/qi.hpp> … which includes other things in that hierarchy — so I can’t just force the include of one file. Where do I do this?

One avenue I haven’t quite sussed out is that something I read talked about some batch file with Generate in the name that has to run after editing the .Build.cs file — but I couldn’t find the batch file.

Help?