Компиляция и сборка в Visual Studio для Mac
Visual Studio для Mac можно использовать для сборки приложений и создания сборок во время разработки проекта. Необходимо часто компилировать код, чтобы оперативно выявлять несоответствия типов, ошибочный синтаксис, неверно написанные ключевые слова и другие ошибки времени компиляции. Выполняя сборку и последующую отладку, можно также находить и исправлять ошибки времени выполнения, связанные с логикой, операциями ввода-вывода и делением на ноль.
Успешная сборка — это правильный синтаксис исходного кода и корректное разрешение всех статических ссылок на библиотеки, сборки и другие компоненты. При сборке создается исполняемый файл приложения. Затем этот исполняемый файл можно протестировать в ходе отладки и различных ручных и автоматических тестов, чтобы проверить качество кода. После полного тестирования приложения вы можете скомпилировать версию выпуска для развертывания у клиентов.
На компьютере Mac для сборки приложения можно использовать любой из следующих методов: Visual Studio для Mac, средства командной строки MSBuild или Azure Pipelines.
Метод построения | Преимущества |
---|---|
Visual Studio для Mac | — Немедленное создание сборок и тестирование их в отладчике. — Запуск многопроцессорных сборок для проектов C#. — Настройка различных аспектов системы сборки. |
Командная строка MSBuild | — Сборка проектов без установки Visual Studio для Mac. — Запуск многопроцессорных сборок для всех типов проектов. — Настройка большинства аспектов системы сборки. |
Azure Pipelines | — Автоматизация процесса сборки в рамках конвейера непрерывной интеграции или поставки. — Применение автоматических тестов для каждой сборки. — Использование практически неограниченных облачных ресурсов для процессов сборки. — Возможность изменения рабочего процесса сборки и создания процедур сборки с подробно настраиваемыми задачами. |
В этом разделе подробно рассматривается сборка на основе IDE. Чтобы создавать приложения из командной строки без установки Visual Studio для Mac, можно установить последнюю версию пакета SDK для .NET Core. Дополнительные сведения о создании приложений с помощью командной строки см. в статье о MSBuild. Дополнительные сведения о создании приложений с помощью Azure Pipelines см. в этой статье.
Этот раздел относится к Visual Studio для Mac. Сведения о Visual Studio для Windows см. в этой статье.
Создание в интегрированной среде разработки
Visual Studio для Mac позволяет мгновенно создавать и запускать сборки, а также сохранять контроль над функциями сборки. При создании проекта Visual Studio для Mac определяет конфигурацию сборки по умолчанию, которая задает контекст для сборок. Можно изменять конфигурации сборки по умолчанию, а также создавать собственные. Создание и изменение конфигураций приводит к автоматическому обновлению файла проекта, который затем используется в MSBuild для сборки проекта.
Дополнительные сведения о сборке проектов и решений в интегрированной среде разработки см. в разделе Сборка и очистка проектов и решений.
Visual Studio для Mac также можно использовать для выполнения следующих задач:
Изменение выходного пути. Он настраивается в параметрах проекта:
Изменение уровня детализации для результатов сборки:
Добавление настраиваемых команд до, во время или после сборки или очистки:
Источник
Как запустить программу C в Mac OS X с помощью терминала?
Я новичок в C. Вот мое «Привет, мир!» программа.
После того, как я пытаюсь запустить его с помощью терминала, он говорит:
9 ответов
Сначала сохраните вашу программу как program.c .
Теперь вам нужен компилятор, поэтому вам нужно перейти в App Store и установить Xcode , который является компилятором и инструментами разработки Apple. Как найти App Store ? Выполните «Поиск в центре внимания» , набрав ⌘ Пробел , начните вводить App Store и нажмите Enter , когда угадывает правильно.
Магазин приложений выглядит так:
Xcode в App Store выглядит так:
Затем вам нужно установить инструменты командной строки в Терминал . Как запустить Терминал ? Вам нужно выполнить еще один «Поиск в центре внимания» , что означает, что вы набираете ⌘ Пробел , начинаете вводить Terminal и нажимаете Введите , когда он угадает Terminal .
Теперь установите инструменты командной строки следующим образом:
Затем вы можете скомпилировать свой код, просто запустив gcc , как показано в следующей строке, без необходимости запускать большой уродливый графический интерфейс разработки программного обеспечения под названием Xcode :
Примечание . В более новых версиях OS X вы должны использовать clang вместо gcc , например:
Затем вы можете запустить его с помощью:
Если ваша программа написана на C ++, вы, вероятно, захотите использовать одну из этих команд:
1) Сначала вам нужно установить компилятор GCC для Mac (погуглите и установите из сети)
2) Запомните путь, по которому вы храните файл C
3) Зайдите в Терминал и установите путь
Например, если вы сохранили в новой папке ProgramC в папке Document
4) Теперь вы можете видеть, что находитесь в папке, в которой вы сохранили свою программу C (позвольте вам сохранить свою программу как Hello.c)
5) Теперь скомпилируйте вашу программу
Ответ — chmod 755 привет — он делает файл исполняемым . Забавно, так что на него никто не ответил. У меня была такая же проблема на MacOS, которая теперь решена.
Nano hello.c make hello chmod 755 hello Затем вы запускаете его ./hello
Clang —version Apple LLVM версии 8.0.0 (clang-800.0.42.1) Цель: x86_64-apple-darwin15.6.0
Ничего не установилось, nano make (clang) chmod — все уже внутри MacOS
Для компиляции программы c в вашей последней версии macOS просто введите в терминал следующее после сохранения файла с расширением .c и по достижении пути, по которому файл сохранен:
После того, как вы проверили все ошибки после компиляции (если таковые имеются), введите следующее для выполнения кода:
Эти команды протестированы на macOS Mojave и работают отлично, ура!
Чтобы скомпилировать c-программу в macos, просто выполните следующие шаги
Используя команду cd в терминале, перейдите в папку с программой c
тогда введите команду ниже
сделать имя файла
затем введите
./filename
введите в терминале: nano ; который является текстовым редактором, доступным для терминала. когда вы это сделаете. что-то вроде этого могло бы появиться.
здесь вы можете ввести свою программу C
введите control(^) + x ->, что означает выход.
сохраните файл, набрав y , чтобы сохранить файл
напишите имя файла; например helloStack.c (не забудьте добавить .c )
когда он появится, введите gcc helloStack.c
«C-программу» запускать не следует. Он предназначен для компиляции в «исполняемую» программу, которую затем можно запустить с вашего терминала. Для этого вам понадобится компилятор.
О, и ответ на ваш последний вопрос («Почему?») Заключается в том, что файл, который вы пытаетесь выполнить, не имеет установленных прав на исполняемый файл (что компилятор обычно делает автоматически с двоичным файлом, что позволяет сделать вывод, что вы пытались для запуска исходного кода как скрипта, отсюда и подсказка при компиляции.)
Работа в 2019 году По умолчанию вы можете скомпилировать свой name.c с помощью терминала
И если вам нужно запустить просто напишите
Сначала убедитесь, что вы исправили свою программу:
Сохраните файл как HelloWorld.c и введите в терминале:
После этого просто запустите исполняемый файл следующим образом:
Источник
Компиляция C/C++ на Apple M1
Заинтригованный впечатляющими бенчмарками M1, я достал последний Mac Mini, чтобы замерить скорость компиляции на C/C++.
Измеряем локальный build2 (без репозитория пакетов), который включает преимущественно код на C++ (611 единиц трансляции) с некоторыми блоками на C (29) и связками между ними (19). Такой бенчмарк требует только компилятора C++ и входит в тестовый набор Phoronix, поэтому можно сравниться с большим количеством процессоров.
Бенчмарк Phoronix в настоящее время использует build2 0.12.0, у нас 0.13.0 (текущий релиз), здесь сборка выполняется примерно на 10% медленнее.
После настройки Mac OS и установки инструментов командной строки для XCode 12.2 у нас есть всё необходимое:
Судя по _LIBCPP_VERSION в заголовке __version файла libc++ , эта версия Apple Clang ответвилась от ванильного Clang где-то в процессе разработки 10.0.0.
Возможно, вы также заметили, что название процессора в триплете Apple Clang отличается от стандартного aarch64 . На самом деле config.guess показывает следующее:
Чтобы не использовать два названия для одного и того же, build2 канонизировал arm64 в aarch64 , поэтому в buildfiles мы всегда видим aarch64.
Проверим количество аппаратных потоков в sysctl :
Здесь 8 потоков, это 4 производительных ядра и 4 энергоэффективных. В первом прогоне задействуем все ядра. Очевидно, это даёт наилучший результат:
Приятным сюрпризом оказалось то, что build2 0.13.0 заработал без особых проблем, хотя он вышел раньше M1. Поскольку в ARM слабое упорядочение памяти, это также послужило дополнительной проверкой многопоточной реализации build2 и интенсивного использования атомиков.
Для начала сравним M1 с моей рабочей станцией на 8-ядерном Intel Xeon E-2288G (по сути, i9-9900K плюс ECC). Та же сборка на ванильном Clang занимает 131 с. Хотя это лучший результат, но производительность M1 всё равно впечатляет. Особенно если учесть, что во время компиляции рабочая станция буквально изрыгает горячий воздух и гудит как самолёт, а М1 тихо шуршит с едва заметным потоком тёплого воздуха.
Однопоточный бенчмарк оценивает производительность CPU в инкрементальных билдах:
Ядро E-2288G справляется за 826 секунд. Таким образом, ядро Xeon на 5 ГГц на самом деле медленнее, чем ядро M1 на 3,2 ГГц.
Еще один интересный результат — четырёхпоточный прогон, который использует только производительные ядра М1:
Хотя он несколько медленнее восьмиядерного теста, но зато использует меньше памяти. Таким образом, такой вариант имеет смысл на системах с недостатком оперативной памяти (как на всех современных машинах M1).
Вот краткое изложение всех результатов:
Понятно, что во многих отношениях это сравнение яблок с апельсинами (рабочая станция против мобильного устройства, старый дизайн и техпроцесс против самого современного и т. д.)
Теперь добавим несколько интересных результатов из бенчмарка Phoronix. В частности, уместно взять показатели новейших рабочих станций и мобильных процессоров Intel и AMD. Вот моя подборка (можете составить собственную, только не забудьте добавить дополнительные 10% к результатам Phoronix; также обратите внимание, что в большинстве тестов используется GCC вместо Clang):
Обратите внимание, что результаты для лучших мобильных Intel (1185G) и AMD (4900HS), к сожалению, ещё не доступны, и приведённые цифры экстраполированы на основе частоты и других бенчмарков.
Из приведённой выше таблицы легко понять, что Apple M1 — впечатляющий процессор, особенно с учётом энергопотребления. Более того, это первый общедоступный ARM-процессор настольного класса. Для сравнения, та же сборка на Raspberry Pi 4B занимает 1724 секунды, то есть более чем в 10 раз медленнее! Хотя мы не можем тут загрузить Linux или Windows, но есть некоторые свидетельства, что они работают на виртуальных машинах с приличной производительностью. В итоге, конвейер непрерывной сборки на базе ARM может стать стандартным.
Увидев бенчмарки M1, невольно задаёшься вопросом, как Apple такое удалось. Хотя есть много спекуляций с некоторыми элементами чёрной магии и колдовства, но вполне хорошим источником технической информации мне показалась эта статья о M1 на Anandtech (и ещё одна там по ссылке). Основные моменты:
Процесс TSMC 5 нм
По сравнению с интеловскими 10 нм (для 11x5G, 14 нм для E-2288G) и 7 нм у AMD/TSMC.
LPDDR4-4266 RAM
Только новейшие мобильные процессоры от Intel и AMD работают с такой быстрой памятью.
Большой кэш L1
У M1 необычно большой кэш L1 для команд и данных.
Большой и быстрый общий кэш L2
В отличие от процессоров Intel и AMD, которые используют отдельные кэши L2 меньшего объёма и большой, но более медленный общий кэш L3, в процессоре M1 реализован быстрый и большой общий кэш L2.
Широкое ядро
У M1 необычайно «широкое» ядро, которое выполняет несколько инструкций параллельно и/или не по порядку. Есть предположение, что из-за слабого упорядочения памяти ARM и кодирования команд фиксированного размера, Apple смогла сделать гораздо более широкое ядро.
Источник
Настоящая компиляция под MAC OS
Перечитал много чего и уже даже создал виртуалку с MAC os и на ней Xamarin с Mono но эти 2 парня компилируют .exe файл а моно нужен лишь для его запуска. Но у меня клиентское приложение и клиенты не будут качать не какие mono. Они просто хотят запустить .dmg(исполняемый файл на Mac os)
Так как это сделать? Как скомпилировать .dmg
Не нужно не каких ссылок на статьи так как я скорее всего уже читал их, и они или не актуальны, или делают не то или вовсе не внятные. А кто нибудь своими словами может написать? Что я должен установить на VS или на Xamarin(на MAC os) что бы эта фигня начала мне выводить .dmg файл. Ну или мб есть еще варианты?
ps. Проект WindowsForms(Очень простой и не замысловатый. Даже чутли не C#2.0)
Компилятор под Mac
Ребят,подскажите пожалуйста компилятор под mac. на c# хочется прогать на ноуте.спасибо!
Компиляция под Windows XP на VS 2017
Взможно ли компилировать в среде разработки Visual Studio 2017 чтобы проект также запускался на.
Компиляция программы в C# под MS DOS
Опытные пользователи и боги кодинга (ну или просто знающие люди) Подскажите, пожалуйста, есть ли.
Компиляция приложений под x64 и x86 ОС
Доброго времени суток. Возникла такая проблема: Работаю на двух компьютерах. На одном стоит 32.
Источник