Отговори на тема  [ 27 мнения ]  Отиди на страница 1, 2  Следваща
CMAKE питанки 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение CMAKE питанки
някой случайно да разбира cmake на "ниско" ( вътрешно ) ниво? ... опитвам се да го "пренапиша" частично на Python
( идеята е: трябва ми "колекцията" от променливи дето я събира... за мултиплатформен инструмент )
( няма реализирани CMAKE интерпретатори на Python )

CMAKE ( inside ) има "база данни" KEY:VALUE
за нормални променливи ( ${VAR} ), ENV ( $ENV{VAR} ) & CACHE променливи... туй добре

обаче има едни "properties" дето не знам ко става ( хем гледам сорса и нищо не вдявам )
като примери: TARGET или add_нещо_си( като файл, папка ... ) ииии къде и как го записва

_________________
main[-1u]={1};


Чет Юли 04, 2024 1:34 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
Дълбока вода си нагазил ... cmake си е сам за себе си и е предвиден да ползва външни make системи - ако не бъркам трябва да има поддръжка на любимия ти scons - т.е. може да не го емулираш ами да го накараш да ти изплюе един scons file в който е описано какво и как да се компилира ... е ако искаш нещо по засукано ще трябва да газиш на дълбокото

Edit: тц, не може .. заблудил съм се ... ще се наложи по трудния начин да се оправяш - за съжаление нямам опит с cmake и не мога да съм полезен - аз самия го ползвам от скоро покрай Zephyr и засега не ми се е налагало да задълбавам кой знае колко

_________________
Мразя да мразя ...


Чет Юли 04, 2024 2:38 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
истинската идея е че "много" SDK са изградени на база cmake/make
кат пример: pico, esp, zephyr ... nuttx(make) ... и повечето са в процес на update ( от git )
при нова версия - клик clone и без да редактирам SDK - compile... като за IDE, клик клик - пей сърце

make/cmake, просто колекционират разни джаджи за компилатора и нищо повече
НО ! мързеливо използват специфични шел команди на хоста
а scons, използва цялатa "мощност" на Python за "колекция" на файлове и флагове, тъй че специфика не му трябва
и реално става мултиплатформена билд система
( като скорост да се забави няколко секунди, но реалната скорост си е на компилатора и PC-то )

_________________
main[-1u]={1};


Чет Юли 04, 2024 3:28 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
визуално се случва това
https://www.youtube.com/watch?v=esO7zpXCDjs
в примера интерпретирам makefile скриптовете за колекцията от src файлове и компилаторни флагове
a scons просто завършва операцията: gcc ....

PS: видеото е правено на 15 годишен "лампов" AMD

_________________
main[-1u]={1};


Чет Юли 04, 2024 3:36 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
Накрая всички завършват с gcc ... просто с годините човек свиква с нещо и всичко друго му се струва неприемливо, сложно, излишно ... аз гледам да не завися от конкретен продукт защото с всеки клиент се налага да е нещо различно. Като, че ли makefile е най лесно за преглъщане защото се поддържа навсякъде и колкото и да е дървено ако си си подредил нещата си работи и е предвидимо, няма изненади. Ама ти все успяваш да вървиш срещу течението, така че няма какво да те убеждава човек ...

_________________
Мразя да мразя ...


Чет Юли 04, 2024 5:22 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
аз не вървя срещу течението

за IDE използвам VSCode / PlatformIO ... което свежда билда до Питон логика
чисто VSCode e яко писане ... или JS ... та дали JS или Питон е се таа
реално мога да викна директно make.exe all
НО някой SDK са направени само и единствено за Linux host ( специфични шел команди )

просто искам след git clone SDK ( last version или ) да не редактирам нищо по него
емулирам makefiles ... събирам променливите и пренастройвам тези на scons, които са същите, но с различни имена

_________________
main[-1u]={1};


Чет Юли 04, 2024 6:40 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
VSCode поддържа всичко т.е. би трябвало да не е проблем да направиш един плъгин който да вика каквото трябва - make, cmake, qmake, scons, west, repo ... не разбирам какво толкова ще спечелиш ако транслираш всичко от едно в друго? Единствения яд, че трябва да инсталираш разни пакети за да мине всичко гладко ... май проблема ти идва, че не работиш в *nix среда (linux, mac) ами си на боза където нещата винаги са сложни, нестабилни и лесно се чупят. Мини един път на линукс и няма да имаш грижи.

_________________
Мразя да мразя ...


Чет Юли 04, 2024 10:18 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
по принцип оригиналните SDK за *никс си работят... с тва проб няма

make/cmake интерпретаторите за сега са само експеримент...
ще се върна на make да го довърша, cmake за сега го заебавам докато разбера как се колекционират таргетите иначе в основата и двата работят

_________________
main[-1u]={1};


Чет Юли 04, 2024 10:56 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
BTW: SCons не ми е любим, той имитира makefile, НО с цалата логическа мощност на Python ( тук е заровено съкровището )
нямам любима Build System ... освен да седна и да я напиша

Makefile - 1976; 48 years ago
CMake - 2000; 24 years ago

ако вземем факта, че Python ( и / или JS ) е мултиплатформен, има мощност да тренира AI... и тн.
то, горните две се обезсмислят като съществуване...
( не казвам, че не работят )

_________________
main[-1u]={1};


Съб Юли 06, 2024 5:42 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
Абе то така ама пък все още се ползват кажи речи навсякъде. Значи има някаква друга причина освен, че са стари и недодялани. Тези дърти тулчета понякога са много жилави и не мрат и е адски трудно да ги заместиш просто защото хората си ги искат.

_________________
Мразя да мразя ...


Съб Юли 06, 2024 10:56 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
Току що прочетох за интересен принцип свързан с това за което говорим:

Цитат:
Lindy Effect ~ The future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age.


Те от тук е - https://www.learningbyproxy.com/p/unchanging-design - индиеца от време на време пише интересни статии.

_________________
Мразя да мразя ...


Нед Юли 07, 2024 7:21 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
честно казано не знам защо са се наложили ... най-вероятно:
1. нямало е лесно ( мързеливо ) решение ... тогава
2. малко девелопъри се интересува как стават нещата и поради това няма развитие ( на Build Systems )

:) cmake е ... просто ужасен ... за 21 век ... някакво изчадие на embedded мисълта
само в main CMakeList на Зефир, "змията" се използва само 24 пъти
и без нея: хОй... ( не ми се броят Python файловете )
и за чий хОй пишеш cmake скрипт, който ще генерира makefile, който ще стартира Python за да викне GCC

_________________
main[-1u]={1};


Нед Юли 07, 2024 12:40 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
В Зефиря е пълно безумие ама то това не е заради цмейка ами заради колегите програмист които са забъркали една манджа с грозде. По принцип цмейка няма допирни точки с питоня. Пък ако им видиш предишния билд от версия 1.х който не бе;е цмейк ами чист мейк съвсем ще ти се изправи косата. росто някои хора излишно усложняват всичко до което се докоснат и като няма кой да им дръпне юздите става страшно. Но самите мейк и цмейк са си доста прости и описват от една страна зависимости между резултат и сорс файлове и командите с които да ги получиш. Ама като се злоупотреби с тях и се вкарат сложни функции, външни скриптове и т.н. пиши го бегало ...

_________________
Мразя да мразя ...


Нед Юли 07, 2024 6:54 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: CMAKE питанки
бая хОй е за чисто нова ( user friendly, C/C++ ) Build System
не че е невъзможна - много писане...
и иска много правилно структуриране на "базата данни" - файлове, флагове, rules...

_________________
main[-1u]={1};


Вто Юли 09, 2024 6:07 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: CMAKE питанки
https://github.com/apenwarr/redo

Виж това. Също е на питон. Преди време ми беше харесало ама реших да не задълбавам но на теб може да ти хареса - помня, че беше доста изчистено като концепция.

_________________
Мразя да мразя ...


Сря Юли 10, 2024 6:40 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 27 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 8 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни