Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Windows] Support for Visual Studio 2019 #3485

Closed
damon-kwok opened this issue Apr 1, 2020 · 9 comments
Closed

[Windows] Support for Visual Studio 2019 #3485

damon-kwok opened this issue Apr 1, 2020 · 9 comments

Comments

@damon-kwok
Copy link
Contributor

Support for Visual Studio 2019

@chalcolith
Copy link
Member

If you are asking whether you can build PonyC with Visual Studio 2019, the answer is yes. Please see https://github.com/ponylang/ponyc/blob/master/BUILD.md#windows for more information.

If you have further questions about building and running PonyC, please ask them in Zulip: https://ponylang.zulipchat.com/#narrow/stream/189985-beginner-help

@damon-kwok
Copy link
Contributor Author

@chalcolith
Copy link
Member

We now try using vswhere.exe (https://github.com/Microsoft/vswhere/wiki) to find Visual Studio first, and the line you mention is a fallback for if vswhere.exe is not found.

See

static const TCHAR* VSWHERE_PATH =
and following.

@damon-kwok
Copy link
Contributor Author

damon-kwok commented Apr 2, 2020

@kulibali
it's not work.

  • Ponyc
    C:\Users\damon\Desktop\pp1>ponyc --version
    nightly20200326 [release]
    Compiled with: LLVM 9.0.1 -- MSVC-19.25.28610.4-x64 1925

  • Vswhere
    C:\Program Files (x86)\Microsoft Visual Studio\Installer>vswhere
    Visual Studio Locator version 2.7.1+180c706d56 [query version 2.6.32.15131]
    Copyright (C) Microsoft Corporation. All rights reserved.

  • Test
    C:\Users\damon\Desktop\pp1>ponyc
    Building builtin -> D:\msys64\home\damon.ome_local\repo\ponyc-0.33.2-bin\packages\builtin
    Building . -> C:\Users\damon\Desktop\pp1
    Generating
    Reachability
    Selector painting
    Data prototypes
    Data types
    Function prototypes
    Functions
    Descriptors
    Optimising
    Writing .\pp1.obj
    Error:
    unable to locate a Microsoft link.exe; please install Visual Studio 2015 or later: https://www.visualstudio.com/
    Error:
    unable to link: no vcvars

  • Try again
    C:\Users\damon\Desktop\pp1>"C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\Common7\Tools\VsDevCmd.bat"
    **********************************************************************
    ** Visual Studio 2019 Developer Command Prompt v16.6.0-pre.2.0
    ** Copyright (c) 2020 Microsoft Corporation
    **********************************************************************
    C:\Users\damon\Desktop\pp1>ponyc
    Building builtin -> D:\msys64\home\damon.ome_local\repo\ponyc-0.33.2-bin\packages\builtin
    Building . -> C:\Users\damon\Desktop\pp1
    Generating
    Reachability
    Selector painting
    Data prototypes
    Data types
    Function prototypes
    Functions
    Descriptors
    Optimising
    Writing .\pp1.obj
    Error:
    unable to locate a Microsoft link.exe; please install Visual Studio 2015 or later: https://www.visualstudio.com/
    Error:
    unable to link: no vcvars

  • Try again...
    C:\Users\damon\Desktop\pp1>"C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\VC\Auxiliary\Build\vcvars64.bat"
    **********************************************************************
    ** Visual Studio 2019 Developer Command Prompt v16.6.0-pre.2.0
    ** Copyright (c) 2020 Microsoft Corporation
    **********************************************************************
    [vcvarsall.bat] Environment initialized for: 'x64'
    C:\Users\damon\Desktop\pp1>ponyc
    Building builtin -> D:\msys64\home\damon.ome_local\repo\ponyc-0.33.2-bin\packages\builtin
    Building . -> C:\Users\damon\Desktop\pp1
    Generating
    Reachability
    Selector painting
    Data prototypes
    Data types
    Function prototypes
    Functions
    Descriptors
    Optimising
    Writing .\pp1.obj
    Error:
    unable to locate a Microsoft link.exe; please install Visual Studio 2015 or later: https://www.visualstudio.com/
    Error:
    unable to link: no vcvars

@damon-kwok
Copy link
Contributor Author

@chalcolith
Copy link
Member

It looks like there's something wrong with your Visual Studio 2019 installation, because vswhere.exe is not listing any versions. Have you installed the Desktop Development with C++ workload via the Visual Studio installer (see https://github.com/ponylang/ponyc/blob/master/INSTALL.md#windows)?

When I run vswhere -latest -products * the output looks like this (PonyC looks for the line starting with installationPath to determine where to find link.exe):

Visual Studio Locator version 2.7.1+180c706d56 [query version 2.3.2200.14893]
Copyright (C) Microsoft Corporation. All rights reserved.

instanceId: d50db1eb
installDate: 2019-05-09 7:38:12 PM
installationName: VisualStudio/16.5.1+29920.165
installationPath: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
installationVersion: 16.5.29920.165
productId: Microsoft.VisualStudio.Product.Community
productPath: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe
state: 4294967295
isComplete: 1
isLaunchable: 1
isPrerelease: 0
isRebootRequired: 0
displayName: Visual Studio Community 2019
description: Powerful IDE, free for students, open-source contributors, and individuals
channelId: VisualStudio.16.Release
channelUri: https://aka.ms/vs/16/release/channel
enginePath: C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\ServiceHub\Services\Microsoft.VisualStudio.Setup.Service
releaseNotes: https://go.microsoft.com/fwlink/?LinkId=660893#16.5.1
thirdPartyNotices: https://go.microsoft.com/fwlink/?LinkId=660909
updateDate: 2020-03-30T00:16:34.4667778Z
catalog_buildBranch: d16.5
catalog_buildVersion: 16.5.29920.165
catalog_id: VisualStudio/16.5.1+29920.165
catalog_localBuild: build-lab
catalog_manifestName: VisualStudio
catalog_manifestType: installer
catalog_productDisplayVersion: 16.5.1
catalog_productLine: Dev16
catalog_productLineVersion: 2019
catalog_productMilestone: RTW
catalog_productMilestoneIsPreRelease: False
catalog_productName: Visual Studio
catalog_productPatchVersion: 1
catalog_productPreReleaseMilestoneSuffix: 1.0
catalog_productSemanticVersion: 16.5.1+29920.165
catalog_requiredEngineVersion: 2.5.2139.10695
properties_campaignId:
properties_channelManifestId: VisualStudio.16.Release/16.5.1+29920.165
properties_nickname:
properties_setupEngineFilePath: C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installershell.exe

@damon-kwok
Copy link
Contributor Author

damon-kwok commented Apr 2, 2020

yes, Desktop Development with C++ is work. i use it every day.
the vswhere can't found the vs2019 preview version

@damon-kwok
Copy link
Contributor Author

damon-kwok commented Apr 2, 2020

this is a microsoft's bug,vswhere does not work on vs 2019 preview
microsoft/vswhere#218 (comment)

@damon-kwok
Copy link
Contributor Author

damon-kwok commented Apr 2, 2020

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants