LINUX.ORG.RU

Разработка на Pure C

 , ,


0

2

Комрады, в воздухе витает необходимость реализовать пару библиотек и небольших программ (с минимальным GUI) на Pure C. Подскажите, что ныне используется для компиляции? Какие IDE? Появились ли пакетные менеджеры?

З.Ы.: не пользовал Pure C с года этак 2003/2005, поэтому буду рад любой информации. Заранее спасибо!

З.З.Ы.: С++ не интересует, сразу прошу не терять время советуя что-то из его экосистемы.

Подскажите, что ныне используется для компиляции? Какие IDE? Появились ли пакетные менеджеры?

GCC, что же ещё. Vim. Конечно же появились, Portage, apt, rpm, тысячи их.

Harald ★★★★★ ()

Подскажите, что ныне используется для компиляции?

Компиляторы с поддержкой C нужного тебе стандарта. При необходимости и желании использовать - удобная для тебя система сборки.

Какие IDE?

Любой текстовый редактор. Любая IDE с поддержкой C.

Появились ли пакетные менеджеры?

Что? Пакетные менеджеры были и в 2003, поэтому писать их не нужно.

grem ★★★★★ ()

можно использовать те же компиляторы и IDE, что и в 2003/2005. добавочно появилось недо-IDE VS Code, и компилятор clang. я лично использую IDE Xcode (на маке), и соответственно компилятор clang. для поддержки линукса преимущественно docker и virtualbox.

waker ★★★★★ ()
Ответ на: комментарий от Harald

Что такое «Pure C»

Оговорка важная, потому что редко сишники обходятся без трусов крестов. А тут сразу облом: крестовый компилятор запрещен.

anonymous ()
Ответ на: комментарий от silver-bullet-bfg

Зависимости ты должен предоставлять сам через систему или ручками.

Можешь средствами системы контроля версий выкачивать или как поделаешь.

Пакетный менеджер дистрибутива подойдёт.

grem ★★★★★ ()
Последнее исправление: grem (всего исправлений: 2)
Ответ на: комментарий от silver-bullet-bfg

Наоборот хорошо.

При написани кода на C отсутствие пакетного менеджера - последнее, что тебя должно беспокоить. А к моменту начала написания кода уже вообще не должно беспокоить.

Ну и что же ты хотел подключать пакетным менеджером?

grem ★★★★★ ()
Ответ на: комментарий от silver-bullet-bfg

Чтобы «что-то сдвинулось» это должно быть нужно. Языкоспецифичные пакетные менеджеры приналичие системных не нужны. А так да, в С мире за 20 лет ничего не изменилось.

slovazap ★★★★★ ()
Ответ на: комментарий от slovazap

Языкоспецифичные пакетные менеджеры приналичие системных не нужны.

Нужны. Зачем зависеть от пакетного менеджера конкретного дистрибутива? Например с помощью pip в python можно установить пакет на любой системе (Windows, Linux, BSD, Haiku, Mac OS) и дистрибутиве. Без pip пришлось бы страдать с over 9000 разных несовместимых пакетных менеджеров или вообще руками копировать файлы и прописывать пути. В результате python не был бы так популярен. Другие языки (JavaScript, Ruby, PHP) тоже популярны за счёт своих пакетных менеджеров. Новые языки без своей пакетной системы никому не нужны.

X512 ★★ ()

Пишем уже много лет в QtCreator, внутри можно обмазывать кастомными инструкциями для сборки,встроенный графический отладчик и анализаторы.

PPP328 ★★★★ ()

что ныне используется для компиляции?

gcc

Какие IDE?

все потихоньку сползает в VsCode, хотя последний vim хорош (отладку подцепить уже можно)

Появились ли пакетные менеджеры?

Странно что никто не упомянул conan, Vcpkg, build2 и clib (lazyman choice), может еще что-то наваяли.

olelookoe ()
Последнее исправление: olelookoe (всего исправлений: 1)

Появились ли пакетные менеджеры?

Да, но не так чтобы их использовали (часть для плюсов, но они и с C будут работать). clib, возможно, один из самых популярных (но при этом он просто притягивает исходники в проект). Там в вики хранится список библиотек, так что можно использовать как каталог.

xaizek ★★★★★ ()
Ответ на: комментарий от silver-bullet-bfg

Вроде ничего не поменялось, все пользуются CMake/Autotools для сборки. При первом запуске ./configure оно находит библиотеки из дистра. А потом во все другие дистры нужно опакечивать заново и эти системы сборки помогают это сделать каждый раз отдельно с минимальной болью (насколько это возможно учитывая всеобщую архитектуру С)

vertexua ★★★★★ ()

Подскажите, что ныне используется для компиляции?

Смотря чем занимаешься. Ну если уж про винду пишешь, то ставь Visual Studio, в ней Clang компилятор, собирай с помощью CMake, как ПМ бери vcpkg.

paramon ()

Подскажите, что ныне используется для компиляции?

Компиляторы. Например GCC, Clang. Для сборки обычно берут cmake или тупо пишут мейкфайлы. Ну или встроенную в IDE хрень.

Какие IDE?

Пофиг. Я какую-то IDE использовал на базе эклипса, когда прошивки под контроллер писал(ну там типа какая-то фирменная SDK, блаблабла), но мне все эти IDE не нравятся. Можешь какой-нибудь Qt creator попробовать, или там code::blocks или емаксом обмазываться. Я и без IDE писать могу.

Появились ли пакетные менеджеры?

Чтоб и на винде, и на линуксах? Или только линукса хватит? Ну вообще можно Gentoo использовать. Лучший пакетный менеджер.

SZT ★★★★★ ()

C тем и хорош что ему не нужны пакетные менеджеры и иде. Системный пакетный менеджер и любой редактор/иде(если lldb и gdb из команд лайн не подходит). C сам по себе простой и для норм подсветки синтаксиса ему не нужны LSP и товарищи. Инты это инты, функции это функции, структуры это структуры, указатели это указатели. Никаких пользовательских типов данных со своей семантикой. Компиляторы clang или GCC всегда под рукой на любой системе, ровно как и make.

curver ()
Ответ на: комментарий от silver-bullet-bfg

зря ты это имел в виду, бери с++ и не выкаблучивайся, рядом вон тема похожая, просто используй минимальные действительно удобные функциональные особенности из с++ типа обобщенных типов (без фанатизма), пространства имен (потому что это просто удобно), constexpr (также спасет тебя в многих случаях, но не во всех), да и в конце концов все равно придется ваять либо свои примитивы и контейнеры, так почему бы не взять уже что-то готовое и отлаженное.

Не дуркуй.

anonymous ()

А для чего нужен «пакетный менеджер»? Такого как в js и прочем нет к счастью.

Я юзаю nix, он может просто запустить тебе консоль, где окружение уже собрано, которое нужно. Даешь файлик с описанием окружения кому то, и у него появляется точно такое же.

Еще часто юзают conan. Его возможности скудны (после nix’a), но может настроить cmake например. Его выбирают в основном за поддержку офтопика.

zerhud ()