GithubHelp home page GithubHelp logo

galek / vs-tool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from juj/vs-tool

1.0 0.0 0.0 181 KB

Visual Studio 2010 plugin to integrate MinGW, Clang and Emscripten to the VS IDE.

Batchfile 7.21% C# 92.79%

vs-tool's Introduction

vs-tool

vs-tool is a Visual Studio 2010 plugin to integrate external compiler/linker toolchains to the VS IDE.

This plugin is a derivation of the excellent work done by Gavin Pugh for the vs-android tool, and is therefore also licensed under the Zlib license.

Features

  • Seamlessly integrates MinGW (GCC), Clang and Emscripten toolchains to Visual Studio.
  • Appears as a new Solution Platform to the Visual Studio projects. Does not destroy or interfere with existing Visual Studio functionality.
  • Does not require setting up new solution/project files to target, can be added to existing solutions.
  • Adapts the Project Properties dialog to show compiler/linker parameters specific to each tool.

Important! At the current stage, the vs-tool plugin should be considered experimental and hackish in nature. This means that when you update to a newer version of the plugin, solutions that use vs-tool CAN LOSE previously set configuration in the solution/project property pages, or even completely FAIL to load into Visual Studio. You were warned.

If you want to help with the project, please contribute with bug reports and patches.

Plugin Installation

For each platform you are interested in using (Clang, Emscripten, MinGW and/or NaCl), do the following:

  1. Copy the folder platform\ from this repository to C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\platform\ (or the corresponding location where MSBuild exists on your system)
  2. To enable an existing solution to be built via vs-tool, create a a platform for it from Configuration Manager -> Active Solution Platform -> New... -> platform.
  3. To choose the toolchain to build with, edit the dropdown list at Project Properties -> General -> Platform Toolset.

Setup for MinGW

MinGW is a toolchain to compile native Windows applications using a Windows port of the GCC compiler. With vs-tool you can build Visual Studio solutions using MinGW.

  1. Install MinGW from http://www.mingw.org/
  2. Set MINGW_BIN environment variable to point to the bin\ directory where the MinGW toolchain executables (gcc.exe et al.) reside in.
  3. Alternatively, in Visual Studio, go to Project Properties -> Toolchain Directories -> MinGW Compiler Path, and specify there the bin\ directory where the MinGW toolchain executables are located.

Setup for Clang

Clang is a C/C++ frontend for the LLVM Compiler Infrastructure. Vs-tool can also invoke Clang to build Visual Studio solutions. Note however, that Clang does not yet support building native Windows applications.

  1. Obtain Clang. For example, follow this web page for instruction how to manually build Clang: http://clang.llvm.org/get_started.html .
  2. Set CLANG_BIN environment variable to point to the directory where the Clang toolchain executables (clang.exe and the rest) reside in.
  3. Alternatively, in Visual Studio, go to Project Properties -> Toolchain Directories -> Clang Compiler Path, and specify there the directory where the Clang toolchain executables are located.

Setup for Emscripten (emcc)

Emscripten is a compiler/linker that allows you to compile C/C++ code to JavaScript. See http://emscripten.org/ . Vs-tool can be used to build Visual Studio solutions to JavaScript.

  1. Follow these instructions to set up Emscripten: https://github.com/kripken/emscripten/wiki/Tutorial .
  2. Emscripten requires Clang to be set up. Follow the above instructions to set up Clang for vs-tool.
  3. Set EMSCRIPTEN environment variable to point to the emscripten root directory (location of emcc.bat et al)
  4. Alternatively, in Visual Studio, go to Project Properties -> Toolchain Directories -> Emcc Linker Path, and specify there the directory to the emscripten root directory.

vs-tool's People

Contributors

fkorak avatar juj avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.