Форум программистов, компьютерный форум CyberForum.ru

Настроить Codeblocks - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 18:06     Настроить Codeblocks #1
Гуру, помогите новичку!
Раньше кодил под Win-консоль в блокноте и запускал компиляцию BAT-ником...
Тепреть пробую перейти на Codeblocks! И немного запутался...

1) Можно ли создать нечто вроде мейкфайла для консольной сборки проекта без кодеблокса? Для меня это очень важно!

2) Обязательно "вручную" добавлять новые файлы в проект? Или они могут туда добавляться автоматически при обнаружении в папке?
3) Можно ли добавлять свои ключи в компиляцию? Например включать ли dll или нет? (меняется размер ехе)
4) Как можно подключить либу в проект (хотя-бы в каком меню искать)? Например 3 метода работы с SQLite - в ехе, в длл динамически, в длл статически?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2014, 18:06     Настроить Codeblocks
Посмотрите здесь:

Codeblocks! C++
codeblocks C++
Codeblocks C++
C++ Помогите настроить CodeBlocks...
CodeBlocks C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
26.11.2014, 18:36     Настроить Codeblocks #2
1) Да, но отдельно от CodeBlocks. Но можно при сборке использовать кастомный мейкфайл (указывается в свойствах проекта).
2) Да.
3) Ключи задаются как с помощью щелчков по галочкам в Seting > Compiler > Compiler Flags, так и с помощью прямого указания в Seting > Compiler > Other Options (соседняя вкладка).
4) Project > Build Options > Linker Settings > add
Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 18:59  [ТС]     Настроить Codeblocks #3
Цитата Сообщение от MrGluck Посмотреть сообщение
1) Да, но отдельно от CodeBlocks. Но можно при сборке использовать кастомный мейкфайл (указывается в свойствах проекта).
Меня больше интересует не то - "возможно или нет"... Понятно что возможно - кодеблокс использует то-же компилятор что и я хочу. Вопрос КАК? Можно ли сделать нечто вроде "выгрузки всех путей копиляции" из кодеблокаса с теми-же параметрами что и в кодеблокске?

В делфях (2009) внизу шел полный путь сборки проекта - достаточно было вставить в батник.

В кодеблоксе нашел закладку внизу где каждый файл собирается в *.о. Но только те файлы которые были изменены... Можно ли получить все пути для вставки свой build.bat ?
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
26.11.2014, 19:02     Настроить Codeblocks #4
Цитата Сообщение от Tester64 Посмотреть сообщение
Можно ли получить все пути для вставки свой build.bat ?
Зачем тебе нужен этот bat? Пиши makefile.
Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 19:21  [ТС]     Настроить Codeblocks #5
1) makefile под виндой насколько я знаю плохо работает.
2) цель не НАПИСАТЬ его, а синхронизировать с codeblocks! Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
26.11.2014, 19:56     Настроить Codeblocks #6
Цитата Сообщение от Tester64 Посмотреть сообщение
1) makefile под виндой насколько я знаю плохо работает.
Нормально работает.
Цитата Сообщение от Tester64 Посмотреть сообщение
Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
А почему нельзя пересобирать в самом CodeBlocks?
hoggy
5114 / 2115 / 403
Регистрация: 15.11.2014
Сообщений: 4,800
Завершенные тесты: 1
26.11.2014, 20:03     Настроить Codeblocks #7
Цитата Сообщение от Tester64 Посмотреть сообщение
2) цель не НАПИСАТЬ его, а синхронизировать с codeblocks! Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
Не уверен, что правильно понял вас.
У вас есть батник, который напрямую пинает компилятор?
То есть, батник самостоятельно собирает всю необходимую информацию о том, чем накормить компилятор?

Если это действительно так, значит вы по прежнему, как и раньше сможете собирать ваш проект отдельно от кодеблока.

Но тогда не понятно, зачем вам его "синхронизировать".
Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 20:25  [ТС]     Настроить Codeblocks #8
Цитата Сообщение от DrOffset Посмотреть сообщение
Нормально работает.
давно гуглил... но кажется он (под винду) однопоточный и куча ограничеий в ключах. И сложные конструкции/условия невозможны (хотя пока и не нужны).
Это так?

Цитата Сообщение от DrOffset Посмотреть сообщение
А почему нельзя пересобирать в самом CodeBlocks?
Кое-что надо автоматизировать - некоторые СРР файлы будут геренироваться другой прогой, компилится в DLL и отправляться клиенту. Каждый раз запускать редактор и нажимать Run для этого - неразумно. Но для отладки необходим приличный IDE. Структура будет расти, кво файлов тоже. Каждый раз перебирать порядок компиляции в батнике - тяжело - можно ошибиться и забыть перекомпилить что-то.

Нашел утилиту cbp2make на родном форуме кодеблокса:
http://forums.codeblocks.org/index.p...13675.msg92405
Создал мейк под винду (довольно просто). Пока не получилось повторить ехе файл, получаемый и из кодеблокса...

Добавлено через 12 минут
Цитата Сообщение от Tester64 Посмотреть сообщение
А почему нельзя пересобирать в самом CodeBlocks?
Плюс... я очень долго учился работать в чистой консоли и в Notepad++. Иногда хочется исправив маленький параметр сразу увидеть результат, а не запускать ради одной мыслишки целую IDE.
Плюс... конечная цель - писать DLL совместимые с android NDK, а ндк собирается в консоли.
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
26.11.2014, 20:31     Настроить Codeblocks #9
Цитата Сообщение от Tester64 Посмотреть сообщение
но кажется он (под винду) однопоточный и куча ограничеий в ключах. И сложные конструкции/условия невозможны (хотя пока и не нужны).
Это так?
Для начала, нужно узнать про какой именно make мы говорим. make (mingw32-make) из состава mingw вполне работоспособен.

Цитата Сообщение от Tester64 Посмотреть сообщение
Кое-что надо автоматизировать - некоторые СРР файлы будут геренироваться другой прогой, компилится в DLL и отправляться клиенту.
В любом случае списки каталогов и файлов в IDE проще всего получать из самой IDE с использованием ее собственных скриптов.
bat-файл - это тупиковый путь.
maritux
Заблокирован
26.11.2014, 20:34     Настроить Codeblocks #10
Цитата Сообщение от Tester64 Посмотреть сообщение
Нашел утилиту cbp2make на родном форуме кодеблокса
У вас какой компилятор? Не MinGW?

Добавлено через 59 секунд
Цитата Сообщение от DrOffset Посмотреть сообщение
make (mingw32-make) из состава mingw вполне работоспособен
К кодблоку можно прикрутить кучу разных компиляторов, не обязательно mingw.
DrOffset
6423 / 3797 / 878
Регистрация: 30.01.2014
Сообщений: 6,585
26.11.2014, 20:39     Настроить Codeblocks #11
Цитата Сообщение от Tester64 Посмотреть сообщение
Плюс... я очень долго учился работать в чистой консоли и в Notepad++. Иногда хочется исправив маленький параметр сразу увидеть результат, а не запускать ради одной мыслишки целую IDE.
Плюс... конечная цель - писать DLL совместимые с android NDK, а ндк собирается в консоли.
Мне кажется этот аргумент надуман.
Нет никаких проблем уметь пользоваться и IDE и консолью. В CodeBlocks возможно настроить множество разнообразных сценариев сборки и инструментов. Прикрутить эту консольную систему сборки для Android в него не сложно.
Блин, вот реально, мне проблемы твои не понятны
Зачем включать и выключать IDE. Открыл 1 раз и работай. С другой стороны, зачем тебе IDE, раз ты говоришь, что привык к консоли? Напиши makefile и используй его из консоли. А еще лучше использовать какую-нибудь систему сборки, вроде cmake. Она, если надо, сможет тебе и makefile и проект для кодеблокса сделать.

Добавлено через 33 секунды
Цитата Сообщение от maritux Посмотреть сообщение
К кодблоку можно прикрутить кучу разных компиляторов, не обязательно mingw.
А я где-то утверждал обратное?
maritux
Заблокирован
26.11.2014, 20:57     Настроить Codeblocks #12
Цитата Сообщение от DrOffset Посмотреть сообщение
А я где-то утверждал обратное?
Дело в том, что если у ТС вместо компилятора MinGW установлен какой-нибудь Visual C++, то я не уверена, что ТС найдет этот mingw32-make

Добавлено через 3 минуты
Цитата Сообщение от maritux Посмотреть сообщение
то я не уверена, что ТС найдет этот mingw32-make
Проверила, теперь точно знаю, что не найдет
DrOffset
26.11.2014, 20:59
  #13

Не по теме:

Цитата Сообщение от maritux Посмотреть сообщение
Дело в том, что если у ТС вместо компилятора MinGW установлен какой-нибудь Visual C++, то я не уверена, что ТС найдет этот mingw32-make
Дело в том, что я сначала спросил у человека какой именно make он использует.
Цитата Сообщение от DrOffset Посмотреть сообщение
Для начала, нужно узнать про какой именно make мы говорим.
А вторая фраза про mingw32-make рассматривала распространенный случай, ведь именно с MinGW CodeBlocks по-умолчанию поставляется для Windows.
Так что, как только ТС даст необходимые пояснения, то можно продолжить разговор в этом направлении.

hoggy
5114 / 2115 / 403
Регистрация: 15.11.2014
Сообщений: 4,800
Завершенные тесты: 1
26.11.2014, 21:04     Настроить Codeblocks #14
Цитата Сообщение от maritux Посмотреть сообщение
Проверила, теперь точно знаю, что не найдет
Человек который умеет собирать из консоли, и писать в блокноте - найдет.

ТС, рекомендую к ознакомлению :
makefile - для общего развития
cmake - для повседневного использования.

Последний может решить все проблемы администрирования проектами любой сложности.
Он делает разработку независимой ни от используемых компиляторов, ни от используемых ИДЕ, ни от используемых платформ.

Любителям писать скрипты и все автоматизировать должно понравится.
maritux
Заблокирован
26.11.2014, 21:10     Настроить Codeblocks #15

Не по теме:

Цитата Сообщение от DrOffset Посмотреть сообщение
Так что, как только ТС даст необходимые пояснения
Дело в том, что ТС уже дал необходимые пояснения
Цитата Сообщение от Tester64 Посмотреть сообщение
Нашел утилиту cbp2make на родном форуме кодеблокса



Добавлено через 4 минуты
Цитата Сообщение от Tester64 Посмотреть сообщение
Можно ли создать нечто вроде мейкфайла для консольной сборки проекта без кодеблокса? Для меня это очень важно!
Можете попробовать DevC++, он если не ошибаюсь, во время сборки проекта генерирует makefile, но не удаляет его, а оставляет в папке с проектом.
DrOffset
26.11.2014, 21:14
  #16

Не по теме:

Цитата Сообщение от maritux Посмотреть сообщение
Дело в том, что ТС уже дал необходимые пояснения
И? Это утилита для CodeBlocks, которая может генерировать makefile под несколько платформ и компиляторов, это не make, это генератор мейкфайлов. Может быть стоит ходить по ссылкам, прежде чем писать?

maritux
26.11.2014, 21:19
  #17

Не по теме:

Цитата Сообщение от DrOffset Посмотреть сообщение
Может быть стоит ходить по ссылкам, прежде чем писать?
Ладно, тогда ждем ТСа, молча!

Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 21:23  [ТС]     Настроить Codeblocks #18
Цитата Сообщение от DrOffset Посмотреть сообщение
Для начала, нужно узнать про какой именно make мы говорим. make (mingw32-make) из состава mingw вполне работоспособен.
Не знал что они отличаются. Читал про встроенный в винду.... буду знать!

Цитата Сообщение от maritux Посмотреть сообщение
У вас какой компилятор? Не MinGW?
Тот MinGW, что шел в комплекте с кодеблок.
Утилита поставляется с исходниками под кодеблок и бинарниками. С ключами натравливаю на cbp-файл и получаю мейкфайлы под любую ОС.

Внешне мейк-нормальный, но похоже у меня полная лажа с путями! Мейк должен запускаться из папки MinGW/bin/ но пути указанны относительно проекта: obj/debug... пишет что не видит такой файл!
Тоже было и когда раньше писал в консоли - приходилось прописывать полные пути к каталогам проекта. Если же запукал не из папки MinGW/bin/, то компилятор не видит dll, лежащих в папке компилятора. Работаю под вин. По инструкциям подобно быть не должно! Может знаете в чем лажа? Похоже решение этой проблемы исправит половину моих нестыковок!!!

Цитата Сообщение от DrOffset Посмотреть сообщение
Мне кажется этот аргумент надуман.
Нет никаких проблем уметь пользоваться и IDE и консолью. В CodeBlocks возможно настроить множество разнообразных сценариев сборки и инструментов. Прикрутить эту консольную систему сборки для Android в него не сложно.
Блин, вот реально, мне проблемы твои не понятны
Зачем включать и выключать IDE. Открыл 1 раз и работай. С другой стороны, зачем тебе IDE, раз ты говоришь, что привык к консоли? Напиши makefile и используй его из консоли. А еще лучше использовать какую-нибудь систему сборки, вроде cmake. Она, если надо, сможет тебе и makefile и проект для кодеблокса сделать.
Это дело привычки! Я НОВИЧОК! С++ для меня "не родной". Я работаю под ява-андроид (и еще на 4х языках). Нужны шустрые и защищенные "вставки" на НДК в андроид. Компилятор НДК - ОЧЕНЬ тормознутый (код под консолью собирается 3-5 сек, а под андроид больше 40 сек без учета инсталяции его в устройство и тесты)! Под андроид нельзя настроить частичную перекомпиляцию "только измененного" - больше 60% занимает сборка пакета-обвертки для запуска под андроид.
Одна из задач - модули защиты - код со встроенными под устройство/задачу параметрами (на порядок тяжелее изменить чем аналогичное под явой). По идее вообще будет компилится по веб-морде-заказу на автономном сервере.
В IDE планирую работать над сложным кодом(пока "в консоли" даже не мечтал о подобном), требующим подсказки, хелпы, гиперссылки. Чаще буду "подправлять" некоторые блоки в блокноте за 5 минут между работами в других языках (включая даже 1С).
maritux
26.11.2014, 21:44
  #19

Не по теме:

Цитата Сообщение от Tester64 Посмотреть сообщение
Я работаю под ява-андроид (и еще на 4х языках). Нужны шустрые и защищенные "вставки" на НДК в андроид.
Собираете очередной андроид-говнософт с рекламой и без кнопочки закрыть? Бросайте эти андроиды с их говно-магазинами. Больше ничего хорошего посоветовать не могу.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2014, 22:00     Настроить Codeblocks
Еще ссылки по теме:

C++ Codeblocks > C++
Code::Bloks C++, В чем разница "codeblocks-12.11-setup.exe" и "codeblocks-12.11mingw-setup.exe" C++
C++ Как настроить русский язык в codeblocks

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Tester64
394 / 355 / 43
Регистрация: 22.05.2013
Сообщений: 2,454
26.11.2014, 22:00  [ТС]     Настроить Codeblocks #20
Цитата Сообщение от maritux Посмотреть сообщение
Собираете очередной андроид-говнософт с рекламой и без кнопочки закрыть? Бросайте эти андроиды с их говно-магазинами. Больше ничего хорошего посоветовать не могу.
Ну вот... вы даже не знаете что я делаю под андроид и уже оскорбили и среду, и продукты и методы разработки... Андроид - еще ОЧЕНЬ молодая ОС! За ней будующее! Уже около 70% всех смартов под ней! Мой профиль - УЧЕТНЫЕ программы! И мне явно не хватает функционала встренного в яву под андроид и уж точно не охота делать что-либо очень сложное опенсорсное, а защиты у ява исходников нет никакой! Хуже чем у продаваемых веб движках на РНР.

Вроде запустилось! И из мейка и из бата!
Бат файл можно заполнить из закладки BUILD LOG внизу Codeblocks после >BUILD>REBUILD
Mейк файл созданный по описанной мной схеме не включает в ключи компилятора "-std=c++11 -w", но они есть в ребилде. После вставки получил нормальный релиз/дебюг

Ошибку с путями исправил таким батом на мейк:
@set path=%path%;d:\CodeBlocks\MinGW\bin\
mingw32-make.exe -f makefile debug

После этого перестало вылетать с ошибкой "не найдена библиотека..." и DLL из папки d:\CodeBlocks\MinGW\bin\

Добавлено через 3 минуты
Цитата Сообщение от DrOffset Посмотреть сообщение
В любом случае списки каталогов и файлов в IDE проще всего получать из самой IDE с использованием ее собственных скриптов.
Если можете, обьясните что это? Я не понял...
Yandex
Объявления
26.11.2014, 22:00     Настроить Codeblocks
Ответ Создать тему
Опции темы

Текущее время: 06:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru