как вызвать библиотеки повышения на appveyor, как установить переменную среды для успешного запуска теста на повышение? - PullRequest
0 голосов
/ 02 января 2019

Я хочу запустить буст-тест в appveyor. Мой код может быть успешно собран без буст-теста. Когда я запускаю тест буста, он имеет ошибку компиляции.

Build started
2
git clone -q --branch=master https://github.com/Gaussma/StaticLibrary.git c:\projects\myproject
3
git checkout -qf 857f43f706d59e6ed74d7af6771d102850e615a0
4
msbuild "c:\projects\myproject\StaticLibrary.sln" /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
5
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
6
Copyright (C) Microsoft Corporation. All rights reserved.
7
8
  LinkedListcpp.cpp
9
  MathFuncsLib.cpp
10
  Generating Code...
11
  MathFuncsLib.vcxproj -> c:\projects\myproject\x64\Debug\MathFuncsLib.lib
12
  boostTest_LinkedList.cpp
13
c:\projects\myproject\myexecrefslib\boosttest_linkedlist.cpp(3): fatal error C1083: Cannot open include file: 'boost/test/included/unit_test.hpp': No such file or directory [c:\projects\myproject\MyExecRefsLib\MyExecRefsLib.vcxproj]

Очистить, поставщик не может найти библиотеку наддува.
Локально я использую Visual Studio 2017 и повышаю библиотеку 1_68_0 для создания файла MyExecRefsLib.vcxproj.

Я выполняю поиск по стеку и нахожу, что другие реализуют файл .yml таким образом.

environment:
  BOOST_ROOT: C:\Libraries\boost_1_59_0
  BOOST_LIBRARYDIR: C:\Libraries\boost_1_59_0\lib64-msvc-14.0

Я обновляю его соответственно для boost_1_67_0, так как я использую Visual Studio 2017 в appveyor, и boost уже установлен на виртуальной машине appveyor.
https://www.appveyor.com/docs/windows-images-software/#boost

environment:
  BOOST_ROOT: C:\Libraries\boost_1_67_0
  BOOST_LIBRARYDIR: C:\Libraries\boost_1_67_0\lib64-msvc-14.1

У меня нет файла .yml, я установил эти две переменные среды вручную в настройках проекта в appveyor.

Мне интересно, какова настройка коррекции для этих двух переменных среды для запуска буст-теста? Текущая настройка имеет ошибку компиляции.

1 Ответ

0 голосов
/ 03 января 2019

На самом деле, это очень простой вопрос. Мы должны сделать среду сборки одинаковой между моей локальной машиной и поставщиком.

В аппейворе: среда: BOOST_ROOT: C: \ Libraries \ boost_1_64_0 BOOST_LIBRARYDIR: C: \ Libraries \ boost_1_64_0 \ lib64-msvc-14.1

В Visual Studio:

Project-> Properties-> C / C ++ -> General -> Дополнительные каталоги включения: C: \ Libraries \ boost_1_64_0

Project-> Properties-> Linker-> Дополнительные зависимости библиотеки: C: \ Libraries \ boost_1_64_0 \ lib64-msvc-14.1

Просто переместите boost_1_64_0 в библиотеки и измените библиотеку с stage_x8 \ lib на lib64-msvc-14.1 - все в порядке.

...