420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
1 | |
Настроить Codeblocks26.11.2014, 18:06. Показов 8738. Ответов 30
Метки нет (Все метки)
Гуру, помогите новичку!
Раньше кодил под Win-консоль в блокноте и запускал компиляцию BAT-ником... Тепреть пробую перейти на Codeblocks! И немного запутался... 1) Можно ли создать нечто вроде мейкфайла для консольной сборки проекта без кодеблокса? Для меня это очень важно! 2) Обязательно "вручную" добавлять новые файлы в проект? Или они могут туда добавляться автоматически при обнаружении в папке? 3) Можно ли добавлять свои ключи в компиляцию? Например включать ли dll или нет? (меняется размер ехе) 4) Как можно подключить либу в проект (хотя-бы в каком меню искать)? Например 3 метода работы с SQLite - в ехе, в длл динамически, в длл статически?
0
|
26.11.2014, 18:06 | |
Ответы с готовыми решениями:
30
Помогите настроить CodeBlocks... Как настроить русский язык в codeblocks Code::Bloks C++, В чем разница "codeblocks-12.11-setup.exe" и "codeblocks-12.11mingw-setup.exe" С++ CodeBlocks |
18844 / 9843 / 2408
Регистрация: 30.01.2014
Сообщений: 17,285
|
|
26.11.2014, 22:06 | 21 |
Этот аргумент я принимаю
Давай тогда в рамках твоих желаний рассуждать. Могу предложить прикрепить этот makefile сюда. Мы посмотрим что с ним не так. В любом случае скажу, что запускать из папки mingw/bin - не нужно. Похоже это из-за того, что кросскомпилятор для windows запускается через эмулятор cygwin. Цитата с оффсайта: В любом случае, даже если ты будешь делать бат-файл или что-то подобное, очень помогут скрипты CodeBlocks, читай ссылку на вики. Через них можно вытащить любую информацию о проекте, в том числе нужные тебе пути к файлам.
0
|
|
26.11.2014, 22:06
#22
|
0
|
18844 / 9843 / 2408
Регистрация: 30.01.2014
Сообщений: 17,285
|
|
26.11.2014, 22:21 | 24 |
Tester64, могу тебе предложить упрощенный вариант. Вставляешь команду на генерацию makefile в поле на скрине 1. Отмечаешь галочку и прописываешь нужное имя makefile (см. скрин 2). Вначале makefile автоматически перегенерируется (туда включатся новые файлы, если они появились). А потом произойдет сборка проекта с использование этого makefile. Либо, ты можешь руками из консоли собрать тоже самое используя этот же makefile.
0
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
26.11.2014, 23:12 [ТС] | 25 |
Вроде они уже отказались от cygwin! В чью пользу не знаю, но возможно даже свой комплитор сделали... Но фишка в другом! Компилятор делает лишь *.о файлы. Под целых 4 вида процессора под андроид. Потом их нужно упаковать в apk файл (в ява оболочке и в архиве). Потом отправиь на устройство. Потом ВКОМПИЛИТЬ в устройство. Потом запустить (что далеко не доли секунды). А уж потом тестить пользуясь ява интерфейсом для доступа к функциям зажатым в программу. Компиляция HelloWorld занимает целых 10-15 секунд. Но полный цикл до тестов - секунд 35-45... И тут ничем не поможешь! Единственное решение - писать МУЛЬТИПЛАТФОРМЕННЫЕ программы - оттестил си код в быстрой консоли в десктопных тестах, и отправил на компиляцию в устройство уже для конечных тестов...
Мне больше нравятся слова "из любой консоли"! Похоже, если соблюдать пути, ВЕСЬ инструментарий я смогу переносить между машинами просто копируя папку. Ничего инсталировать в ОС на чужой машине не понадобиться... Не по теме: Насмешили! Вы бы еще про ДОС вспомнили! Во первых (как мне говорили) на БРЕНДОВЫХ телефонах системный софт проходит не хилые тесты и не глючит если не ставить "студенческие программы" из маркета. Конечно мой "китаец" за 140$ сильно подглючивает(хотя по начинке равен был 400$ самсунгу). Во вторых один из моих проектов - корпоративная звонилка - графы связей абонентов, общая инфа о каждом, синхронизация номеров между сотрудниками, работа с записями разговоров, вычисление мобильного оператора звонящего, передача абонента сотруднику, автодозвон, звонок по симке зависящей от исходящего оператора, общие напоминания о звонках, СРМ и еще много чего... Андроид - это ЛИНУКС среди телефонов! Написать можно (увы, пока только почти) все что не хватало бы иметь "в кармане"! В третьих, это всего 5я версия андроида! Сколько лет нокии? А сколько разрешений есть у айфона? А бывают ли у них случаи когда флешка не припаяна в целях экономии? у меня нет датчика компаса - 90% GPS навигаторов отказываются работать! Айфон теряет популярность. ВинФон ее и не набирал. И с батареей андроид бережнее винды и совместимости между старой и новой виндой давно накрылась. И размеры у полноценного планшета с XP не помещаются в кармашек... И цена у андроида в несколько раз меньше и разнообразие датчиков далеко впереди (ШК, радиометки, магнитные карточки). Повторюсь еще раз - ОЧЕНЬ МОЛОДАЯ ОС! Но рынок еще такой-же молодой! Есть шанс со своим продуктов "выстрелить" к тому времени когда андроид станет "приличным". Конечно интерфейсы еще слабые, на 90% требуются дизайнеры а не кодеры, предпочитают делать исключительно онлайн "морды" к серверам без офлан просмотра. Даже если твоя программа идеальная (убраны все утечки памяти, минимальная нагрузка на ядро, оптимальная нагрузка на флешку, продуман интерфес) это не значит что она не будет глючить из-за загружености памяти чужими сервисами и чужими плюшками ("живые обои" и нотиф уведомления грузят проц даже если скрыты). Но я хочу написать СВОИ компоненты! И не хочу их писать на яве! Для этого мне и нужен С++... Даже приличного "виндового" скроллинга нет. Есть надежда что нативный код будет работать на порядки надежнее в следующих версиях без использования явы. А вот винда теряет позиции на всех фронтах - покеты сдохли, в офисы предпочитают линуксы, веб сервера предпочитают на винду не ставить... Далеко не лидер в "носимых устройствах". Медиацентр-ретранслятор к плазме я предпочту за 30-50$ размером с сигаретную пачку вместо жужащего компа с виндой. Я даже кассовый аппарат на андроиде видел! Может это Вам стоит задуматься? :) Предпочту пожалуй уже остановиться на достигнутом! 1) проект успешно собирается в IDE 2) один батник пересоздает мейкфайл (если что-то изменил в списке файлов 3) мейкфайл успешно собирается из батника (и релиз и дебюг) ... с этим уже можно работать!
0
|
|
26.11.2014, 23:20
#26
|
0
|
MrGluck
|
26.11.2014, 23:23
#27
|
0
|
18844 / 9843 / 2408
Регистрация: 30.01.2014
Сообщений: 17,285
|
|
26.11.2014, 23:39 | 28 |
Не, все по-прежнему. Официальному сайту я верю.
PS. В любом случае молодец, что разобрался сам
0
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
26.11.2014, 23:58 [ТС] | 29 |
Не по теме: Возможно, но ИМХО портировать одно популярное приложение с одной платформы на другую (успев немножко заработать), более шуструю проще чем ждать когда появится следующая (возможно) более шустрая/удобная/безглючная/продуманная/безвирусная... К тому-же линукс НЕ МОЖЕТ вытестить винду до сих пор на 100% даже в не игровом секторе! Не все легко портируется. Не все авторы ХОТЯТ портировать софт и без того "приносящий бабло" под бесплатные (и возможно плохо защищенные) ОС. Линукс на самсунг можно поставить уже давно, но далеко не все предпочитаю его туда ставить... Как и новые нокия/винфон остался просто телефоном, т.к. под него мало авторов предпочитают кодить! Не уверен! Прежде чем сказать про "отказались" я вспомнил что раньше (в 7й-8й версии) требовали качать сигвин с оффсайта (и тяжело настраивать - неподьемно для новичка). В 9х его "встроили" в официальный пакет НДК. Я его прошерстил - куча ехе (чаще make*.exe), питонов и парсеров. Сигвин не упоминается. Логотип отсуствует. Нашел только g++ и gcc из знакомых. Хелп по ним не дал даже версию. И действительно слышал что кажется свою версию с++ планировали написать. Возможно на основе исходников сигвина или даже mingw...
0
|
18844 / 9843 / 2408
Регистрация: 30.01.2014
Сообщений: 17,285
|
|
27.11.2014, 00:44 | 30 |
Посмотрел историю изменений для тулчейна, да, похоже, ты прав. В последних версиях NDK весь инструментарий - нативные win32 приложения. А на оф.сайте, получается, устаревшая информация.
Версия смотрится через <имя бинарника> -v. Инструментарий родом из *nix, следовательно справка (--help) обычно не показывает никаких версий. Для версии есть свой параметр. Я не поленился и скачал последнюю версию, итого там используется 2 компилятора под несколько платформ: gcc в нескольких версиях (с 4.6 - 4.9) и clang (3.4 и 3.5). Чтобы убедиться в этом, можешь зайти в папку toolchain на своей машине. Т.е. да, они делают какие-то патчи, вносят определенные изменения и собирают версии кросскомпиляторов, но сами они их не разрабатывают (имеется в виду свои и с нуля). Правильные слова здесь - дорабатывают. Большинство изменений вообще не связано с непосредственно С++, кстати. Большинство изменений (это видно по логам) связано с поддержкой целевых платформ: кодогенерация, оптимизация, ABI, стабильность работы и поддержка специфичного для андроид окружения.
1
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
27.11.2014, 01:15 [ТС] | 31 |
0
|
27.11.2014, 01:15 | |
27.11.2014, 01:15 | |
Помогаю со студенческими работами здесь
31
CodeBlocks codeblocks CodeBlocks Codeblocks CodeBlocks 13.12 vs 10.05 codeblocks Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |