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

Visual studio 14.0 lacking VCTools on image: Visual Studio 2017 #1410

Open
refack opened this issue Mar 17, 2017 · 15 comments
Open

Visual studio 14.0 lacking VCTools on image: Visual Studio 2017 #1410

refack opened this issue Mar 17, 2017 · 15 comments

Comments

@refack
Copy link

refack commented Mar 17, 2017

No description provided.

@FeodorFitsner
Copy link
Member

There is VS 2015 with C++ support/tooling installed on Visual Studio 2017 image.
Could you please elaborate on your issue? A simple repro project in a public repository would be a plus.

@refack
Copy link
Author

refack commented Mar 18, 2017

https://ci.appveyor.com/project/refack/windows-autoconf/build/1.0.115/job/kkjaevwluw0jh70e
This code looks for vcvarsall.bat in the install dir of Visual Studio 14.0.
After it kept failing I run it with the line

dir /s /b "C:\Program Files (x86)\Microsoft Visual Studio 14.0\*.*" > C:\projects\windows-autoconf\logs\dir14.log

this is the result. no vcvarsall.bat, and no cl.exe

@FeodorFitsner
Copy link
Member

VS 2015 was installed after VS 2017 and only to support some backward-compatibility scenarios. Maybe the fact it was installed after VS 2017 is the reason VC tools are missing.

Anyway, Visual Studio 2017 is not a cumulative update to Visual Studio 2015 image and the whole purpose of it was VS 2017 + Docker to support newer projects.

If you need to build/test VS 2015 stuff please use Visual Studio 2015 image and build matrix if you need to support multiple targets.

@refack
Copy link
Author

refack commented Mar 18, 2017

NP 🤷
Just update the docs (reduce frustration)

@mbrucher
Copy link

I have a similar issue, trying to get the vcvarsall.bat file that should be installed in VC\Auxiliary\Build, but it doesn't seem to be installed. I tried several paths, but none of them seem to work (see https://ci.appveyor.com/project/mbrucher/audiotk)

@IlyaFinkelshteyn
Copy link
Contributor

Please try %comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" and %comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" for amd64 and x86 builds respectively

@mbrucher
Copy link

Thx. Tried to add the line, but appveyor says that there is a syntax error:
error parsing appveyor.yml: (Line: 110, Col: 5, Idx: 3535) - (Line: 110, Col: 6, Idx: 3536): While scanning for the next token, find character that cannot start any token
Some magic flag?

@IlyaFinkelshteyn
Copy link
Contributor

Easiest way to get correct YAML is to enter it in UI and use Export YAML menu

@mbrucher
Copy link

I now have a proper YAML file, but it setill doesn't work
call '%VSINSTALL%'
The filename, directory name, or volume label syntax is incorrect.
Command exited with code 1
where VSINSTALL is set for instance to "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" in the build matrix.

@IlyaFinkelshteyn
Copy link
Contributor

Can you share the whole YAML file?

@mbrucher
Copy link

Yes, of course: https://github.com/mbrucher/AudioTK/blob/develop/.appveyor.yml
And thanks your time looking at it. It worked fine for VS2015, but since MS decided to change the hierarchy, it's a mess.

@IlyaFinkelshteyn
Copy link
Contributor

Ah, I see, please use APPVEYOR_BUILD_WORKER_IMAGE instead of image. Details here

@mbrucher
Copy link

Thanks, I didn't see that paragraph.
After lots of trials, I have the 2015 builds that are compiling again, will see in 30 mins if the 2017 are also good now.

@Rondom
Copy link

Rondom commented Jun 8, 2017

So, has anyone here succeeded building with VS2015 on the VS2017-image? Our use case is running tests on Win2016 and on Win2012. Ideally we would like to use the same compiler.

@mloskot
Copy link

mloskot commented Sep 10, 2017

@IlyaFinkelshteyn regarding your suggestion in #1410 (comment)

The %comspec% /k in %comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" does not work for me as the command stops (hangs!) the build process and no following commands are execute, obviously.

capture

Instead of %comspec% /k , call must be used.

IMHO, it would be good if the https://www.appveyor.com/docs/lang/cpp/#visual-studio section is completed with the two commands for VS2017:

call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat"
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"

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

6 participants