Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,552
#1

Gcc без MinGW - C++

19.12.2013, 18:35. Просмотров 1821. Ответов 24
Метки нет (Все метки)

Интересует вопрос, можно ли рабочий код (который без ошибок компилируется в Visual Studio) компилировать с помощью командной строки Windows (я так понимаю что в Windows встроен компилятор gcc)...
Тут на форуме наткнулся на тему GCC с MinGW, однако MinGW это стороннее приложение, хотелось бы без него обойтись, т.к. я же знаю что код правильный (так понимаю что среда разработки VS или же MinGW именно для этого и созданна - для выявления ошибок в программном коде), та статья - GCC - компиляция C/C++ программ
И наводящий вопрос, если можно, то как подключать библиотеки? Я вот программлю под WinApi, в свойствах проэкта по дефолту написанно - Use Standart Windows Libraries (в General), ну и иногда нужно Use MFC in static library...
Туда же: если я в вкладке VStudio Linker-> Input в режиме Debug дописываю gdi32.lib , comctl32.lib и др. то можно ли их так же добавлять в проэкт?
И ещё один наводящий вопрос - полазил по интернету, библиотеки к компилируемой программе подключаются через команду -l и библиотеку... Можно ли обойти это, используя уже в коде программы например через pragma или define это?

И пожалуйста, приводите либо примеры, либо статейки небольшие ( только не целые книги, не хочу на лишнее терять месяцы ).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2013, 18:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Gcc без MinGW (C++):

Сборки MinGW(GCC-win32/win64) от niXman - C++
с этого момента, буду производить тестовые/пререлизные/релизные сборки mingw. файлы с пометкой snapshot и prerelease - не стабильные...

mingw и лицензия - C++
Интересует следующий вопрос. Можно ли создавать ПО под лицензией, отличной от GPL (или с закрытым\частично закрытым кодом)? ПО собрано...

Mingw и windows.h - C++
Возникла ошибка в том что mingw определяет мою систему без unicode, а windows.h как unicode, и например при обращение к ф-ции...

mingw и lib - C++
Как в mingw в коде подключить файл lib, #pragma comment(lib, "Gdi32.lib") не помогает. А то пытаюсь использовать SetTextColor и подобные...

Руководство на русском по GCC и g++ - C++
Подскажите по сабжу - надо разобраться с ключами, режимами и понять общую схему работы компиляторов и линковщика. Добавлено через 3...

Вышел релиз GCC 5.1 - C++
С чем всех и поздравляю :) Это первый выпуск проекта версии 5 (GCC 5.0 был пропущен). Среди основных изменений: — поддержка OpenMP...

24
gng
645 / 491 / 133
Регистрация: 08.09.2013
Сообщений: 1,326
19.12.2013, 22:22 #2
Цитата Сообщение от Izual Посмотреть сообщение
Интересует вопрос, можно ли рабочий код (который без ошибок компилируется в Visual Studio) компилировать с помощью командной строки Windows (я так понимаю что в Windows встроен компилятор gcc)...
Уиндовс не имеет встроенных компиляторов.
Цитата Сообщение от Izual Посмотреть сообщение
Тут на форуме наткнулся на тему GCC с MinGW, однако MinGW это стороннее приложение, хотелось бы без него обойтись
MinGW - это порт компилятора gcc под Уиндовс.
Цитата Сообщение от Izual Посмотреть сообщение
так понимаю что среда разработки VS или же MinGW именно для этого и созданна - для выявления ошибок в программном коде
Нет. Синтаксические ошибки отлавливает компилятор. MinGW не является средой разработки.
Цитата Сообщение от Izual Посмотреть сообщение
библиотеки к компилируемой программе подключаются через команду -l и библиотеку... Можно ли обойти это, используя уже в коде программы например через pragma или define это?
Нет. Поиск библиотек происходит на стадии компановки.
Цитата Сообщение от Izual Посмотреть сообщение
И пожалуйста, приводите либо примеры, либо статейки небольшие ( только не целые книги, не хочу на лишнее терять месяцы ).
Думаю, вам нужны именно книги. Ещё лучше, если есть возможность - получить систематтическое образование, хотя бы на курсах. На это уйдут скорее уже не месяцы, а годы. Иначе рискуете, несмотря на практику программирования, и дальше задавать подобные вопросы на форумах.
0
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,552
20.12.2013, 13:47  [ТС] #3
Цитата Сообщение от gng Посмотреть сообщение
Уиндовс не имеет встроенных компиляторов.

MinGW - это порт компилятора gcc под Уиндовс.

Нет. Синтаксические ошибки отлавливает компилятор. MinGW не является средой разработки.

Нет. Поиск библиотек происходит на стадии компановки.

Думаю, вам нужны именно книги. Ещё лучше, если есть возможность - получить систематтическое образование, хотя бы на курсах. На это уйдут скорее уже не месяцы, а годы. Иначе рискуете, несмотря на практику программирования, и дальше задавать подобные вопросы на форумах.
Ещё раз, разве gcc не встроен в Windows ? Везде пишут что встроен, а вы утверждаете обратное...

MinGW это среда разработки я так понимаю, а gcc это сам компилятор?

Может книгу посоветуете в таком случае?... Я в принципе не против обучения, тем более что я "самоучка", т.к. образование средне-специальное по программированию(точнее по информатике тогда уж, но основным предметом было программирование на Си) я давно получил и даже больше, по окончанию продолжил обучение и дошёл до конца 3-его курса высшего образования, но бросил, т.к. практическо-систематических знаний было мало, т.е. в не правильной последовательности их давали в институте(если можно так назвать этот МФПА/МИФП) и многое пропускали, что просто убивало желание дальше учиться в этом вузе, т.к. многое было не понятно уже из за пропуска основополагающих знаний.
В итоге я на нынешнем рабочем месте, тут можно посмеяться, я скорее даже и не работаю как это принять считать, а скорее в процессе самообучения взял на себя обязанность написания программы в библиотеке WinApi в виде базы данных, так что самоучка грубо говоря, но для меня так даже лучше, т.к. обучаюсь параллельно с поставленными задачами, которые параллельно приминяю, так что чисто из полученного горе опыта вуза, вижу что мой способ лучше, т.к. сам себе режисёр.
Конечно из за нехватки, как я уже говорил основополагающих знаний возникают подобные нупские вопросы, однако этого я думаю даже вуз не даст, т.к. понимание таких важных вещей ( которые обычно считаются лишними, и поэтому просто пропускаются мимо ушей ) просто не приходит, а приходит только тогда, когда с этим встречаешся и осознаёш важность темы. (зафилософствовался что то я)
0
ranebull
523 / 356 / 54
Регистрация: 23.06.2013
Сообщений: 1,182
Записей в блоге: 6
20.12.2013, 15:53 #4
Цитата Сообщение от Izual Посмотреть сообщение
Ещё раз, разве gcc не встроен в Windows ? Везде пишут что встроен, а вы утверждаете обратное...
Где такое написано? Можно ссылочку?
Цитата Сообщение от Izual Посмотреть сообщение
MinGW это среда разработки я так понимаю, а gcc это сам компилятор?
MinGW - это порт компилятора gcc, т.е. компилятор. MinGW Developer Studio - это IDE. GCC - на самом деле семейство компиляторов, которые only Linux.
Цитата Сообщение от Izual Посмотреть сообщение
Может книгу посоветуете в таком случае?... Я в принципе не против обучения, тем более что я "самоучка", т.к. образование средне-специальное по программированию
Литература C++
0
Izual
94 / 119 / 6
Регистрация: 13.11.2012
Сообщений: 1,552
20.12.2013, 17:04  [ТС] #5
Видимо подразумевая под Unix системами и встроенным компилятором я не правильно понял что он есть и в Windows, пичаль. Разсчитывал что можно написать "само компилируемую" программу... А по поводу литературы, у меня подобного вида книги есть (есть Хабибулин, "Профессионально программирование на С/С++" если правильно помню название), но там нет таких тонкостей...
Если можно отойти(точнее углубиться в суть моей задумки), хотелось бы узнать как реализовать компилятор в программе, например, полагаю что в 1С программе есть вроде встроенный... Я примерно понимаю как реализовать там например рисование форм динамически, но вот построение алгоритмов ( сложно составных, даже без использования статических CASE ) будет реализовать самописными функциями обращения к условиям типа if else будет сложновато, проще ИМХО встроенный компилятор...
0
ranebull
523 / 356 / 54
Регистрация: 23.06.2013
Сообщений: 1,182
Записей в блоге: 6
20.12.2013, 17:05 #6
Цитата Сообщение от Izual Посмотреть сообщение
Видимо подразумевая под Unix системами и встроенным компилятором я не правильно понял что он есть и в Windows, пичаль. Разсчитывал что можно написать "само компилируемую" программу... А по поводу литературы, у меня подобного вида книги есть (есть Хабибулин, "Профессионально программирование на С/С++" если правильно помню название), но там нет таких тонкостей...
Если можно отойти(точнее углубиться в суть моей задумки), хотелось бы узнать как реализовать компилятор в программе, например, полагаю что в 1С программе есть вроде встроенный... Я примерно понимаю как реализовать там например рисование форм динамически, но вот построение алгоритмов ( сложно составных, даже без использования статических CASE ) будет реализовать самописными функциями обращения к условиям типа if else будет сложновато, проще ИМХО встроенный компилятор...
А чем встроенный компилятор хуже не встроенного?
0
Dmitriy_M
1360 / 1243 / 114
Регистрация: 20.03.2009
Сообщений: 4,449
Записей в блоге: 11
20.12.2013, 17:11 #7
Цитата Сообщение от ranebull Посмотреть сообщение
которые only Linux.
gcc кросс платформенный.
0
ranebull
523 / 356 / 54
Регистрация: 23.06.2013
Сообщений: 1,182
Записей в блоге: 6
20.12.2013, 17:13 #8
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
GCC - only Linux. А порт GCC- это MinGW.
0
Evg
Эксперт CАвтор FAQ
18258 / 6383 / 440
Регистрация: 30.03.2009
Сообщений: 17,665
Записей в блоге: 28
20.12.2013, 17:25 #9
Цитата Сообщение от Izual Посмотреть сообщение
хотелось бы узнать как реализовать компилятор в программе
Вот здесь про интерпретатор Пишем свой интерпретатор языка BASIC
Компилятор в разы сложнее
Я слабо понимаю, зачем компилятор встраивать в программу. Куда проще воспользоваться внешним компилятором

Не по теме:

Цитата Сообщение от ranebull Посмотреть сообщение
GCC - only Linux
Кто это тебе сказал такое? А что тогда, по твоему, есть gcc под solaris или gcc под qnx? И чем, по твоему, отличаются "порт" и "не порт"?

0
ranebull
523 / 356 / 54
Регистрация: 23.06.2013
Сообщений: 1,182
Записей в блоге: 6
20.12.2013, 17:26 #10
Цитата Сообщение от Evg Посмотреть сообщение
Вот здесь про интерпретатор Пишем свой интерпретатор языка BASIC
Компилятор в разы сложнее
Я слабо понимаю, зачем компилятор встраивать в программу. Куда проще воспользоваться внешним компилятором

Не по теме:


Кто это тебе сказал такое? А что тогда, по твоему, есть gcc под solaris или gcc под qnx? И чем, по твоему, отличаются "порт" и "не порт"?

Все-все-все, gcc - not only Linux
0
gng
645 / 491 / 133
Регистрация: 08.09.2013
Сообщений: 1,326
20.12.2013, 19:51 #11
Цитата Сообщение от Evg Посмотреть сообщение
И чем, по твоему, отличаются "порт" и "не порт"?
Отличается немало. Иначе - зачем создавать порт?
Cам gcc, скомпилированный для целевой платформы windows, и поставляемый, например в составе cygwin, может работать с windows api через posix прослойку (cygwin32.dll).
MinGW - отдельный порт, разрабатываемый отдельной командой, создает нативные уиндовс программы, в т.ч и 64-битные.
0
Dmitriy_M
1360 / 1243 / 114
Регистрация: 20.03.2009
Сообщений: 4,449
Записей в блоге: 11
20.12.2013, 22:04 #12
Цитата Сообщение от gng Посмотреть сообщение
Отличается немало.
В Gcc нет поддержки WinAPI.
Цитата Сообщение от gng Посмотреть сообщение
Cам gcc, скомпилированный для целевой платформы windows, и поставляемый, например в составе cygwin, может работать с windows api через posix прослойку (cygwin32.dll).
cygwin32.dll поддерживает совместимость с POSIX(потоки и т.д.), для работы с WinAPI используется либа из MinGW.
0
Evg
Эксперт CАвтор FAQ
18258 / 6383 / 440
Регистрация: 30.03.2009
Сообщений: 17,665
Записей в блоге: 28
20.12.2013, 22:14 #13
Цитата Сообщение от gng Посмотреть сообщение
Иначе - зачем создавать порт?
Тогда что такое "не порт"?
0
gng
645 / 491 / 133
Регистрация: 08.09.2013
Сообщений: 1,326
20.12.2013, 23:46 #14
Цитата Сообщение от Evg Посмотреть сообщение
Тогда что такое "не порт"?
Сам gcc, исходники которого (одни и те же) можно скомпилировать для многих целевых платформ.

Добавлено через 13 минут
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
В Gcc нет поддержки WinAPI.
Очевидно. Откуда ей там быть.
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
cygwin32.dll поддерживает совместимость с POSIX(потоки и т.д.), для работы с WinAPI используется либа из MinGW.
Тем не менее, как сказано у них в документации, без cygwin32.dl с winapi он работать не будет даже при наличии библиотек.
Сам не проверял. Да и последнюю программу с WinAPI писал более десяти лет назад. Но не думаю, что кто-то при наличии MinGW всерьез использует cygwin с WinAPI.
0
Evg
Эксперт CАвтор FAQ
18258 / 6383 / 440
Регистрация: 30.03.2009
Сообщений: 17,665
Записей в блоге: 28
21.12.2013, 00:59 #15
Цитата Сообщение от gng Посмотреть сообщение
Сам gcc, исходники которого (одни и те же) можно скомпилировать для многих целевых платформ
Т.е. gcc - это сферический компилятор в вакууме? А "gcc для i386-linux", "gcc для sparc-solaris" и т.п. - это "порты"?
0
21.12.2013, 00:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2013, 00:59
Привет! Вот еще темы с ответами:

Компиляция проекта в gcc - C++
Здравствуйте, форумчане! Прошу помочь разобраться! Есть программа, представленная в 3х файлах. В первом содержится описание класса...

[mingw] не видит <codecvt> - C++
всем привет. есть библиотека, которая изначально разрабатывалась в msvc2013. к библиотеке есть требование - кросс-платформа, и...

MSVS или MINGW - C++
Привет всем. У меня скоро заканчивается пробная версия visual studio и я думаю установить mingw(операционная система Windows). Как mingw?...

libcUrl с OpenSSL на MinGW - C++
Помогите! Никак не могу разобраться с libcUrl с OpenSSL, просто libcUrl компилю без проблем, и использую, но нужнен https. ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru