Как определить версию компилятора C # в командной строке
Есть ли какая-нибудь команда для получения версии компилятора C #? Командные швы csc не имеют опции для отображения версии компилятора.
Однако я почти уверен, что мой компилятор C # новее 1.3!
2 ответа
Другой был выделен как часть проекта Roslyn и хранится в каталоге MSBuild. При сбросе номера версии нумерация снова начинается с 1. Вы запустите его, когда воспользуетесь командной строкой разработчика. Наиболее вероятной причиной сброса номера версии является их желание не попадать в рамки выпуска релизов, Roslyn страдала от очень большого количества ошибок, требующих исправления промежуточных выпусков. Заметной проблемой, вызванной разделением, было добавление нового типа ValueTuple в C # v7, необходимого для значительно улучшенной поддержки кортежей. Компилятор был поставлен до того, как фреймворк стал доступен, и программистам пришлось на время вернуться к использованию пакета Nuget.
В качестве дословного ответа на вопрос new-ish [ update: версии roslyn выше 2, см. Комментарий Кэмерона МакФарланда ] версии csc действительно имеют переключатель / version:
Для сценариев (скажем, если вы хотите включить версию) этого может быть достаточно, вместе с тестированием %errorlevel% из csc /version для помещения в слишком старую корзину.
Однако /version НЕ отображается в https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/listed-alphabetically (которая кажется последней версией), и я не могу найти ничего в списке в какой версии он был добавлен.
ОБНОВЛЕНИЕ: я также был бы очень осторожен с номером версии, сообщенным csc, например, мой личный «по умолчанию» находится в C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\Roslyn и имеет версию 2.3.2.62116 (и дату файла 22 / 9/2017), но у меня также есть C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe с версией 4.7.2046.0 (и датой файла 18.03.2017) (без переключателя / version).
Есть ли какая-нибудь команда для получения версии компилятора C #?
Поиск версии компилятора Microsoft С++ из командной строки (для make файлов)
Мне нужно пропустить что-то действительно очевидное, но по какой-то причине версия командной строки компилятора Microsoft С++ (cl.exe) не поддерживает отчетность только своей версии при запуске. Нам нужно это, чтобы написать make файлы, которые проверяют версию компилятора, которую установил пользователь нашего инструмента (они получают make файлы с кодом, который они должны компилировать локально, поэтому мы не контролируем их версию компилятора).
Я прочитал интерактивную справку MSDN docs и компилятора, и я не могу найти переключатель, чтобы просто распечатать версию компилятора. Раздражающе, вы всегда получаете версию, когда компилятор запускается. но вы, похоже, не можете запустить компилятор, чтобы получить версию.
Поиск поставщика/версии компилятора с использованием qmake показался похожим, но касается только простого случая gcc.
Я пробую это с VС++ Express 2005, если это имеет значение. Я надеялся, что этого не произойдет, так как обнаружение версии компилятора лучше всего сделать не зависящим от компилятора способом:
Обновление после ответов:
ОТВЕТЫ
Ответ 1
Вы уверены, что не можете просто запустить cl.exe без каких-либо сообщений, чтобы сообщить о своей версии?
d:\Program Files\Microsoft Visual Studio 9.0\VC > cl
Microsoft (R) 32-разрядная версия оптимизатора для C/С++ версии 15.00.30729.01 для 80×86
В 2005 году SP 1 (добавлены классы безопасного стандарта С++):
C:\Program Files\Microsoft Visual Studio 8\VC > cl
Microsoft (R) 32-разрядный оптимизатор компилятора C/С++ версии 14.00.50727.762 для 80×86
C:\Program Files\Microsoft Visual Studio 8\VC > cl
Microsoft (R) 32-разрядная оптимизация компилятора C/С++ версии 14.00.50727.42 для 80×86
Microsoft (R) 32-разрядный оптимизатор компилятора C/С++ версии 13.10.6030 для 80×86
ИЗМЕНИТЬ
В течение 2010 года он будет по линии:
Microsoft (R) 32-разрядная оптимизация компилятора C/С++ версии 16.XX.YYYYY.ZZ для 80×86
или в зависимости от целевой платформы
Microsoft (R) C/С++ Оптимизация компилятора версии 16.XX.YYYYY.ZZ для x64
В течение 2015 года:
Ответ 2
У меня была такая же проблема сегодня. Мне нужно было установить флаг в makefile makefile, если версия компилятора cl равна 15. Вот взлом, который я придумал:
Вышеупомянутая идея может быть использована для написания командного файла Windows, который проверяет, является ли версия компилятора cl заданным номером. Вот код cl_version_LE.bat :
Теперь, если вы хотите установить флаг в файле makefile nmake, если версия cl 15, вы можете использовать:
Ответ 3
и раздел «Краткое справочное руководство по номерам версий Visual С++».
Ответ 4
Просто запустите его без параметров.
Ответ 5
Собственно, в любое время, когда я даю cl аргумент, он выводит номер версии в первой строке.
Вы можете просто передать ему аргумент мусора, а затем проанализировать первую строку вывода, содержащую номер проверки.
Узнать версию стандарта C++
Visual с++ выбрать версию стандарта си
visual с++ выбрать версию стандарта си в настройках visual studio 2017 есть только возможность.

прогаю на C::B. Нужно понять, что ставить в поле языка для загрузки проги на сайт. там дофига.

Как узнать версию windows и модели видеократы и саундкарты? MinGW, code blocks.
Узнать версию
В начале QML же обычно пишется что-то типа import QtQuick 5.7? Так вот как узнать эту самую версию.
Добавлено через 1 минуту
Ибо gcc может так:
Узнать версию Java из реестра
Нужно узнать версию Java на компьютере и в зависимости от результата принять какое либо действие.
Как узнать версию приложения?
В про-файле у меня стоит строчка VERSION = 1.0 Как во время компиляции/исполнения программы.
Узнать версию компилятора в CodeBlocks
Хотел проверить версию компилятора, но когда открываю gcc.exe выдает ошибку.
Узнать версию ОС
хотелось бы попробовать пример с оператором исполнения, но прежде чем его использовать(например.

У меня задача стоит, сделать проверку операционки, чтобы задействовать правильный участок скрипта.
Как узнать версию gcc, используемую для сборки linux?
Я использую OpenWRT. это дистрибутив Linux для встраиваемых систем
Я хочу знать версию gcc, используемую для компиляции Linux
Я сделал некоторые исследования в сети, но безрезультатно.
Я пытался выполнить эти команды для некоторого существующего двоичного файла в Linux OpenWRT (например, wget)
Но я не получил никакого результата
не дает никакого результата
Есть ли способ узнать, используется ли gcc для сборки всего linux (как для пользовательского пространства, так и для пространства ядра)?
Решение
Главное предостережение
.comment раздел не является обязательным. Многие дистрибутивы удаляют его из исполняемого файла, когда исполняемый файл упакован в пакет. Раздел будет помещен в отдельный пакет отладки.
Например, в моей системе:
После установки libcurl3-dbg пакет, мы получаем изображение с разделенными разделами, следуя ссылке отладки GNU:
Другие решения
Для построения рабочего пространства OpenWRT используется ваш основной gcc:
Для кросс-компиляции все необходимые инструменты находятся под вами openwrt build dir.
GCC, используемый во время компиляции, можно найти в staging directory OpenWRT. Перейдите в домашнюю директорию openwrt и найдите toolchain каталог под постановочный реж. Здесь вы найдете bin каталог, в котором находятся все инструменты кросс-компиляции.
Например для ar71xx :
Как проверить версию компилятора gcc C++ на наличие Eclipse?
Я использую Eclipse версию выпуска 3.7.0, но нигде не могу найти gcc. Как и где я могу увидеть версию gcc, которую я сейчас использую?
5 ответов
Я запускаю Eclipse CDT в Redhat Enterprise, версия компилятора gcc по умолчанию-4.4.6. Недавно команда поддержки добавила gcc 4.6.3, и мне интересно, как я могу настроить Eclipse таким образом, чтобы я мог выбрать компиляцию приложения либо с gcc 4.4.6, либо с 4.6.3. Спасибо.
в любом terminal рядом с вами.. 😉
-dumpversion Выведите версию компилятора (например, 3.0 ) — и больше ничего не делайте.
То же самое работает для следующих compilers/aliases:
Будьте осторожны с автоматическим анализом вывода GCC:
Вместо того, чтобы искать на форумах, для любого возможного варианта вы всегда можете ввести:
Я надеюсь, что это будет полезно
Похожие вопросы:
У нас есть проект в KEIL IDE для LPC2148, который имеет RTX kernel программ вместе с другими программами в нем, который был скомпилирован ARM CC.Now нам нужно изменить IDE с KEIL(ARM CC) на.
Я запускаю Eclipse CDT в Redhat Enterprise, версия компилятора gcc по умолчанию-4.4.6. Недавно команда поддержки добавила gcc 4.6.3, и мне интересно, как я могу настроить Eclipse таким образом.
Я использую компилятор Eclipse для java. Но как проверить номер версии компилятора?
В Perl module/distribution/package, как я могу проверить наличие функционирующего компилятора C++ в Makefile.PL и остановиться, если компилятор C++ не функционирует?
Я использую Eclipse Mars для компиляции проекта. Насколько я понимаю, Eclipse использует свой собственный компилятор Java (JDT) для компиляции кода Java. Как я могу узнать версию компилятора.
Я использую Eclipse IDE для C++ (Eclipse CDT). Я хочу установить библиотеку SFML, но не могу найти, какую версию GCC использует мой Eclipse. Примечание: На моем компьютере установлено несколько.



