Ориентация на старые версии Windows (Windows Server 2008 R2) - PullRequest
1 голос
/ 29 сентября 2019

У меня есть более старая рабочая станция Windows 10 с Rust 1.37 (stable-x86_64-pc-windows-msvc) и Visual Studio 2017 со следующими функциями:

  • Основные функции Visual C ++ Build Tools
  • VC ++ 2017 версия 15.9 v14.16 последние инструменты v141
  • Распространяемое обновление Visual C ++ 2017
  • Windows 10 SDK (10.0.17763.0)
  • Инструменты Visual C ++ для CMake
  • Основные функции инструментов тестирования - Инструменты сборки

На этой рабочей станции я могу скомпилировать программу, которая отлично работает в моей целевой среде (Windows Server 2008 R2).

У меня естьболее новая рабочая станция Windows 10, на которой я установил устаревшую версию Visual Studio 2017. Интересно, что установщик не предлагает точно такие же опции для инструментов сборки C ++, но я думаю, что у меня есть необходимые, например:

  • VC ++ 2017 версия 15.9 v14.16 последние инструменты v141
  • Инструменты Visual C ++ для CMake и Linux
  • Windows 10 SDK (10.0.17763.0)

Однакокогда я собираю тПрограмма (с той же версией / набором инструментов Rust) на этом компьютере выдает ошибку в моей целевой среде с сообщением «Программа не может запуститься, потому что на вашем компьютере отсутствует VCRUNTIME140.dll».

Что яздесь не хватает? Как я могу настроить rustup / cargo для своей конкретной среды?

Ответы [ 2 ]

1 голос
/ 16 октября 2019

Я думаю, что из-за того, что вы не выбрали некоторые компоненты при установке версии vs., версия 2015 года не является хорошим выбором.

0 голосов
/ 16 октября 2019

Оказывается, я ошибся: мой проект не был скомпилирован с stable-x86_64-pc-windows-msvc на моем старом компьютере. В какой-то момент я установил x86_64-pc-windows-gnu набор инструментов и установил его как переопределение для этого проекта. Изменение моего набора инструментов на x86_64-pc-windows-gnu на новом компьютере привело к созданию бинарного файла, который мог работать на целевой машине.

Вместо того, чтобы удалять этот вопрос, я оставлю его здесь для тех, кому может потребоваться таргетинг на более старых. Среды Windows:

Если у вас возникли проблемы с запуском двоичного файла Rust на старом компьютере с Windows, попробуйте скомпилировать с x86_64-pc-windows-gnu вместо msvc.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...