CMake, mingw, codeblocks – level up
March 7th, 2010 Begemot Posted in Программирование
И опыт, сын ошибок трудных…(c)
Напряженная выдалась неделька. Решил все-таки потихоньку приближаться к давней мечте, к портированию на линукс\макос.
Начать решил с освоения CMake’а – кроссплатформенной системы автоматизации сборки. Штука, по идее, архиполезная если разработка ведется более чем одним разработчиком\на более чем одном компе или системе. Написал Cmak’овский проект научился генерировать солюшен для студии, make файл для mibgw и (почти) проект для CodeBlock’sa.
Еще меня убедили, что перед тем как суваться с кодом в линукс – целесообразно добиться компиляции под виндой на mingw (это порт gcc под винду – если кто не знает) – легче будет править ошибки. Я решил, что это не лишено здравого смысла. Поставил minwg и кодеблокс, и заставил собиратся на все этому тестовые примеры. Спасибо одному хорошему человеку с этим с этим справился довольно быстро.
В процессе всего этого, пришел к выводу что наверное было дешевле заплатить кому-нибудь разбирающемуся в CMake за подходящий мне скрипт и обучение, потому что самому реально долго. Ну или хотя бы не бросаться так с места в карьер, а просто потихоньку искать примеры реальных скриптов – по другому вышло долго.
В общем пять дней прошло в поисках пути через тернии, но зато я стал ближе к идеалу, и можно поставить пару лишних галочек в резюме, при случае:)
В планах заставить программы собираться на wingw, освоение cmake под линуксом и потом в конце коммунизм:)
March 7th, 2010 at 6:16
Не надо ничего никому платить – сам осилишь 🙂 Просто ты сразу хочешь всего, а ты потихоньку, освойся на одном уровне, потом копай глубже.
March 7th, 2010 at 6:50
Так ведь надо то всего и сразу, скоро пенсия уже 🙂
March 8th, 2010 at 2:39
Для своих проектов я лично использую scons. Если уже знаешь python, то он в освоении занимает минимум времени. Собственно нехватка времени на изучение и есть причина, почему я до сих пор не знаю CMake (хотя именно он используется в компании, в которой я раньше работал).
Вообще идея scons мне оч. нравиться, но он похоже не так распространён как cmake. Хотелось бы знать по каким критериям тот же MySQL выбрал его в качестве сборщика для своих проектов 🙂
March 8th, 2010 at 7:30
когда я начал стонать что СMake не так просто как я думаю, меня пытались наприавить на scons, но я все-таки удержался, не смотря на питон…
1. CMake все-таки своего рода стандарт
2. CMake вроде делает все что мне надо, а вот насчет scons не уверен, помоему я там не все заметел – но я смотрел бегло.
March 11th, 2010 at 4:52
хм, а я вот собираю без всяких симейков и скунсов 🙁 Я что-то пропустил?
March 11th, 2010 at 5:07
да смейк:)
у меня в перспективе планируется 3 платформы (а лучше 5!), это около 7 возможных связок коммпилер\иде. И все это штук для 5 программ (а лучше 7!) – я хочу автоматизацию 🙂
March 11th, 2010 at 5:27
когда я столкнулся в своё время, после турбо паскаля с make я был в шоке! нет, в дауне.. много много времени, и только потом,значительно потом дошла до меня сила этого инструмента… при этом использовался именно make от какого то Си компилера, а не стандартный rmake из поставки Clipper
так что правильной дорогой идёт товарищ, правда процесс компиляции и сборки убивал своей продолжительностью, после турбо сред 😉
March 11th, 2010 at 9:50
Да… Зоопарк еще тот 🙂