Я думаю, что переменные окружения, в отличие от макросов и переменных VS, расширяются с помощью %%
, поэтому путь должен быть:
%BOOST_ROOT%\whatever
Поскольку msbuild также рассматривает %
как начало escape-последовательности шестнадцатеричного символа(и выполняет подстановку перед расширением переменной среды) может потребоваться экранирование %
с %25
.