Re:Visual C++ for Linux Development
by tdicola on Wednesday March 30, 2016 @07:52PM
(#11393945)
I'm curious is it using MSBuild as the build system on a Linux machine, or does it integrate with existing makefile, CMake, autotools, etc. style projects? It seems like a total nonstarter to expect Linux developers to switch to MSBuild.
[ Parent
| on HN ]
We are using msbuild to drive running the compile on the remote Linux machine. Today that is being emitted as straight commands for gcc on Linux. We're interested in what we should do around make, cmake, etc. This is just a start.
I'd highly recommend contributing back "build features" to projects like cmake if it doesn't already exist so that you can simply enable a feature rather than hard-coding gcc-specific flags. Even something like clang takes a little work to shoehorn into a project that is enabling many gcc specific features. Abstracting the feature out means compiler front-ends don't have to mimic gcc to have a chance of working, and even allows more easily adapting to other POSIX platforms where gcc/clang are not the default compilers. E.g. if cmake doesn't support a robust enough way to specify LTO the way you need to in a project, consider helping add it. (Just picked some random feature)
Good point, if needed I'm sure we will.
Please tell me that msbuild has a replacement in the wings? Something capable of hermetic reproducible builds. PLEASE???
It wasn't clear to me either. Unfortunately, the extension seems to have a dependency on the Android NDK which I don't plan to install:
Today we do have a dependency on the Android Tools for Visual StudioThe NDK dependency is actually to get the MIEngine that provides the machine interface to hook up GDB with the VS debugger. We're looking at making the MIEngine a separate component so the Android, iOS and Linux tools don't have a dependency on each other.
Had to boot Linux to expand my NTFS partition to have enough space to install it all - hoping it's something for Update 3 or before.
Oh weird, huh this must be more fallout from the canceling of Astoria that they're spinning off into a standalone thing.
Re:Visual C++ for Linux Development
by giancarlostoro on Wednesday March 30, 2016 @07:57PM
(#11393974)
I think it builds it on the system since they have you install g++ and gdb probably for debugging. That's the impression I get, not entirely sure though. So it probably transfers your code via SSH and then runs it.
It's not super clear but I think that step is actually installing g++, etc. on the Linux host (and in reality they probably mean you should apt-get install build-essential and not just g++, gdb, etc. individually). It's having you install openssh-server which wouldn't really make sense on the client/development PC. Also for ARM you'd need a gcc cross compiler installed and I didn't see any mention of that.
The dependencies mentioned are for the remote Linux machine you connect to from VS. We use ssh from within VS to copy files across and issue the compilation commands with gcc. There isn't any cross compilation right now even for ARM. Most of our testing here has been on Raspberry Pis.
Re:Visual C++ for Linux Development
by iontodirel on Wednesday March 30, 2016 @08:17PM
(#11394086)
the ssh server is indeed for the remote machine/Linux only, we are working on a prerequisites check with possible automatic acquisition of those tools on Linux if you do not have them installed; ARM on x86 or x64 and x86 on x64 it's not a sscenario we currently support, but x86 on x64 would be the first thing we look at
Re:Visual C++ for Linux Development
by giancarlostoro on Wednesday March 30, 2016 @08:19PM
(#11394098)
I meant exactly what you said, they install the compiler and tool set on the Linux host, the Windows end just SSH's into it and sends the code / commands. That is my speculation at least.