1

Я разрабатываю приложение с VS Professional 2013, которое использует пакет NuGet под названием SFML. Теперь я тестирую версию Express версии VS 2015, и я хотел протестировать ее, создав это приложение. Исходный код приложения находится в GitHub, и я могу клонировать репозиторий в новый локальный каталог и просто открывать его в VS 2015. Когда я создаю, пакеты NuGet восстанавливаются, а папка «пакеты» добавляется в локальную папку решений. Тем не менее, C++ код сам по себе не в состоянии построить, метание ошибку компилятора:NuGet, не добавляющий каталоги включения

Error (active) cannot open source file "SFML\System\NonCopyable.hpp"

на линии, которая читает

#include <SFML\System\NonCopyable.hpp> 

Эта ошибка не произошла в VS 2013, который я предполагал потому, что NuGet добавил соответствующие пути к дополнительным каталогам проекта. Разве это не происходит сейчас из-за проблемы NuGet или проблемы VS 2015, или просто потому, что я что-то упустил? Есть ли способ решить эту проблему, используя текущую версию Express Express 2015?

Заранее благодарен!

ответ

2

У меня была та же проблема. В моем примере я заметил, что мой самородок пакет был V120 во имя Microsoft.AspNet.SignalR.Client.Cpp.v120.WinDesktop я получаю сообщение об ошибке не удается найти файл включения pplx \ pplxtasks.h

Чтобы исправить этот вопрос:

  1. правая кнопка мыши ваш проекта в обозревателе решений и выберите Свойства
  2. в окне Свойства конфигурации - Общие изменения Platform Toolset версии сопоставления пакета NuGet - в этом случае Visual Studio 2013 (V120)

Более подробно об изменении платформы набор инструментов здесь: https://msdn.microsoft.com/en-AU/library/ff770576.aspx

Теперь проект компилируется правильно.

+0

благодарит за ответ! Хотя я не уверен, что следую вашему решению. Что такое "Microsoft.AspNet.SignalR.Client.Cpp.v120.WinDesktop"? Это файл, настройка? Также я не могу найти «Platform Toolset» в любом месте в Configuration Configuration. Я вижу столбец «Платформа», но его единственными допустимыми значениями являются Win32 и x64, ничего о Visual Studio 2013 (v120). Кроме того, я заметил, что фильтр заголовков и исходных файлов внутри проектов моего решения пуст, даже несмотря на то, что файлы .vcxproj отображают правильные элементы ItemGroup. Любая идея, что это значит? Еще раз спасибо. – Rabadash8820

+0

Он находится в свойствах проекта, а не в свойствах решения. –

+0

В моем случае Microsoft.AspNet.SignalR.Client.Cpp.v120.WinDesktop был именем пакета Nuget, который дал мне ключ к решению. Это может отличаться для вашего решения; Я просто назвал это имя, если у кого-то еще проблема с этим же пакетом NuGet. –

Смежные вопросы