420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
1

Настроить Codeblocks

26.11.2014, 18:06. Показов 8736. Ответов 30
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Гуру, помогите новичку!
Раньше кодил под Win-консоль в блокноте и запускал компиляцию BAT-ником...
Тепреть пробую перейти на Codeblocks! И немного запутался...

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

2) Обязательно "вручную" добавлять новые файлы в проект? Или они могут туда добавляться автоматически при обнаружении в папке?
3) Можно ли добавлять свои ключи в компиляцию? Например включать ли dll или нет? (меняется размер ехе)
4) Как можно подключить либу в проект (хотя-бы в каком меню искать)? Например 3 метода работы с SQLite - в ехе, в длл динамически, в длл статически?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2014, 18:06
Ответы с готовыми решениями:

Помогите настроить CodeBlocks...
Скачал CodeBlocks 10,5 ,при установки поставил везде галочки .Потом решил проверить...

Как настроить русский язык в codeblocks
Программа выводит сообщения на русском, но при вводе вылезают казяблики, что можно предпринять?...

Code::Bloks C++, В чем разница "codeblocks-12.11-setup.exe" и "codeblocks-12.11mingw-setup.exe"
Захожу на сайт хочу скачать codeblocks чтобы на нем изучать си++ , толька н могу понять разницы...

С++ CodeBlocks
Здравствуйте, уважаемые пользователи этого великолепного форума)) Задание: Подсчитать,...

30
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
26.11.2014, 18:36 2
1) Да, но отдельно от CodeBlocks. Но можно при сборке использовать кастомный мейкфайл (указывается в свойствах проекта).
2) Да.
3) Ключи задаются как с помощью щелчков по галочкам в Seting > Compiler > Compiler Flags, так и с помощью прямого указания в Seting > Compiler > Other Options (соседняя вкладка).
4) Project > Build Options > Linker Settings > add
1
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
26.11.2014, 18:59  [ТС] 3
Цитата Сообщение от MrGluck Посмотреть сообщение
1) Да, но отдельно от CodeBlocks. Но можно при сборке использовать кастомный мейкфайл (указывается в свойствах проекта).
Меня больше интересует не то - "возможно или нет"... Понятно что возможно - кодеблокс использует то-же компилятор что и я хочу. Вопрос КАК? Можно ли сделать нечто вроде "выгрузки всех путей копиляции" из кодеблокаса с теми-же параметрами что и в кодеблокске?

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

В кодеблоксе нашел закладку внизу где каждый файл собирается в *.о. Но только те файлы которые были изменены... Можно ли получить все пути для вставки свой build.bat ?
0
18822 / 9826 / 2401
Регистрация: 30.01.2014
Сообщений: 17,260
26.11.2014, 19:02 4
Цитата Сообщение от Tester64 Посмотреть сообщение
Можно ли получить все пути для вставки свой build.bat ?
Зачем тебе нужен этот bat? Пиши makefile.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
26.11.2014, 19:21  [ТС] 5
1) makefile под виндой насколько я знаю плохо работает.
2) цель не НАПИСАТЬ его, а синхронизировать с codeblocks! Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
0
18822 / 9826 / 2401
Регистрация: 30.01.2014
Сообщений: 17,260
26.11.2014, 19:56 6
Цитата Сообщение от Tester64 Посмотреть сообщение
1) makefile под виндой насколько я знаю плохо работает.
Нормально работает.
Цитата Сообщение от Tester64 Посмотреть сообщение
Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
А почему нельзя пересобирать в самом CodeBlocks?
0
Эксперт С++
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
26.11.2014, 20:03 7
Цитата Сообщение от Tester64 Посмотреть сообщение
2) цель не НАПИСАТЬ его, а синхронизировать с codeblocks! Чтобы писать и менять связи в кодеблоксе (удобном редакторе), но командно пересобирать батником.
Не уверен, что правильно понял вас.
У вас есть батник, который напрямую пинает компилятор?
То есть, батник самостоятельно собирает всю необходимую информацию о том, чем накормить компилятор?

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

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

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

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

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

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

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

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

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

Не по теме:

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

0
Эксперт С++
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
26.11.2014, 21:04 14
Цитата Сообщение от maritux Посмотреть сообщение
Проверила, теперь точно знаю, что не найдет
Человек который умеет собирать из консоли, и писать в блокноте - найдет.

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

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

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

Не по теме:

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



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

Не по теме:

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

0
maritux
26.11.2014, 21:19
  #17

Не по теме:

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

0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
26.11.2014, 21:23  [ТС] 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С).
0
maritux
26.11.2014, 21:44
  #19

Не по теме:

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

0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
26.11.2014, 22:00  [ТС] 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 с использованием ее собственных скриптов.
Если можете, обьясните что это? Я не понял...
0
26.11.2014, 22:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2014, 22:00
Помогаю со студенческими работами здесь

CodeBlocks
Вообщем хочу поставить русскую кодировку(windows-866),погуглил,нашёл ответ,как превратить в 866 при...

codeblocks
Codeblocks , chto delat chto by dobavit bibliotheku <iostream.h>

CodeBlocks
Помогите пожалуйста разобраться с проблемой: Не могу в среде CodeBlocks разобраться как...

Codeblocks
как подключить русские буквы в с++ , выводит не понятные симвлы

CodeBlocks 13.12 vs 10.05
Еще раз вынужден просить помощи у Сообщества. Есть программа (код С++) которая работала...

codeblocks
скачал codeblocks,не знаю как начать в нем работать. около года сидел в delphi?теперь не знаю как...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru