Ищем небольшой компилятор C/C++, доступный для OS X Catalina
C и C++ — это разные языки. Прочтите и сравните оба n1570 (стандарт C11) и n3337 (стандарт C++11).
P.S. писать скрипты для гидродинамики, даже не нуждаясь в ООП, просто удивляюсь, почему сейчас компиляторы перевешивают возможности USB-флешек из 2000-х :(
Поскольку современные компиляторы C или C++ способны к очень хитрым оптимизациям, динамика практически необходима (помните об OpenACC и OpenMP и OpenCL; возможно, вам понадобится один из них). См. этот проект отчета, в котором они объясняются.
Если вам нужен неоптимизирующий компилятор C, рассмотрите возможность использования tinycc или nwcc (и, возможно, перенесите их на MacOSX). Оба способны компилировать код C на MacOSX или Linux. Оба имеют открытый исходный код и написаны на C.
Вы можете использовать vim или GNU emacs в качестве редактора исходного кода. Или что Apple предлагает на вашем Macbook. Выберите также хороший инструмент автоматизации сборки (например, GNU make или ninja) для управления вашим компилятором C или C++ и, конечно же, компилировать в командной строке...
Но вы, вероятно, могли бы воспользоваться в своей области многочисленными оптимизациями, которые либо недавно были проведены GCC (т.е. g++
для C++, gcc
для C) или недавние Clang (например, clang++
для C++, clang
для C). И оба компилятора имеют десятки миллионов строк исходного кода.
Если вы хотите, чтобы язык сценариев управлял библиотеками гидродинамики, рассмотрите возможность использования существующего: Lua, Python, Guile, Ocaml... приходит на ум и может включать другие огромные библиотеки.
См. также LinuxFromScratch.
Если у вас есть много времени (и несколько гигабайт дискового пространства), рассмотрите следующий маршрут: загрузите какой-нибудь старый компилятор C; используйте его для компиляции nwcc
из исходного кода. Загрузите исходный код GCC 4.5 (он написан на C). Скомпилируйте это. Теперь у вас есть компилятор C++ g++-4.5
. Загрузите исходный код GCC 9. Скомпилируйте его с помощью g++-4.5
. Теперь у вас есть оптимизирующий компилятор C++11 g++-9
. Это может занять неделю вашего времени.
Также рассматриваю возможность установки серверного дистрибутива Linux только ради C.
Этот выбор велик и зависит от мнения. Я бы порекомендовал недавний Debian или Ubuntu.
person
Basile Starynkevitch
schedule
04.06.2020