Jenkins, MSBuild и Includes

Однажды оказалось, что Jenkins фейлит билды MSVS 2012 (которые выполняются посредством консольного msbuild), с сообщениями о том, что не найдены всякие заголовочные файлы (например al.h). Как известно, в студии начиная с 2010 “глобальные” настройки путей к инклюдам, либам и прочему перенесены в странное место – Property Manager->$Project|$Configuration -> Microsoft.Cpp.$Platform.user. Ну и ладно, казалось бы, зашли, прописали и всё хорошо. Студия компилит, в консоли msbuild тоже нормально всё делает… Вот только Jenkins запускает своего slave windows сборщика от системного пользователя, а настройки путей, они не глобальные, а per-user оказывается, поэтому он и не подхватывает эти пути.

Самым простым решением оказалось, как ни странно, создать каталог, скопировать туда “свой” файлик C:\Users\konst\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props и добавить в командную строку запуска /p:UserRootDir=d:\msbuild_home

Similar Posts

  • После военки

    Странное я создание – пришел на военку, хочу спать, значит надо затусоваться где-то и поспать, приваливает счастье в виде отсутствия первой пары – вместо того чтобы воспользоваться моментом я читал книгу – новые главы нового произведения С. Лукьяненко. После 3й пары наш майор-подполковник зовет 2 добровольцев подержать лестницу и разрешает свалить после этого – я…

  • HDD

    Вот купили вы новый винт, который в 8 раз больше вашего нынешнего и решили старичка отправить на покой. Для этого нужна мелочь – перенести винду. Напрямую это сделать не получится, потому что она, сцуко (с), хитрая, поэтому пойдём более изощрённым путём и склонируем её при помощи norton ghost. Всё вроде бы ништяк – на новом…

  • Console vs PC

    Почему я думаю, что консоли рано или поздно окончательно похоронят PC. А потому что у первых юзабилити (удобство и простота использования) в стопицот раз выше! Как происходит процесс “поиграть” на приставке. Покупаем игру в магазине, вставляем диск в привод, нажимаем кнопку “поиграть” игра стартует и через секунд 30 мы уже смотрим вступительные ролики и игровое…

  • Сегодня когда дибажили с KVaks’ом адд-ин, то обнаружили интересную особенность студии. Левые файлы, которые открыты в студии не висят просто так – они лежат в проекте под названием Miscellaneous Files, а это значит, что если вы думаете, будто у вас только один проект в солюшене (ну или там пять, шесть), то вы ошибаетесь – их…

  • Serialization

    Сегодня, наконец-то, закончил делать сериализацию для всяких игровых объектов – в том виде, как я ее вижу. Идеи были вытащены из буста, но так, как в тех шаблонах сам черт ногу сломит, то пришлось делать “по пониманию”. Делалось это потому что реально существует проблема того, что когда геймдизайнер просит вынести ему новые параметры для настройки…

  • Посольства и очереди

    Сегодня снова ходил в посольство, подавать документы на шенгенскую визу, на этот раз собираемся в Швецию, Стокгольм. Пойти туда можно двумя способами – в порядке живой очереди, или по записи на определённое время, но только на вторник или пятницу. Нас начали чуть поджимать сроки и мы пошли живой очередью в четверг (сегодня), чтобы оставить на всякий случай пятницу про запас.