Ну, если рантайм с дефектами считать "хорошей фичей языка", то да.
Насколько я понимаю, сказано о MinGW.
Но в "дистрибутиве" MinGW присутствует не только original (old) Visual C runtime, MSVCRT
а также C runtime-ы студий, от 6-ой, до 10-й.
Тогда не понятна фраза, упомянутая выше.
Вася ведь использует все тоже самое (что касается рантаймов С).
Выбор VS, не дает что-либо сверх, того что можно получить, выбрав MinGW.
Или я не так понял, и все с точностью до наоборот.
Может существуют в природе, реализации С runtime, на платформе windows, не microsoft ?
P.S. glibc же нет под MinGW, я правильно понимаю ? или есть ?
или может есть какой другой рантайм ?
--
С уваженим, Сергей
Только на РСДН помимо ответа на вопрос, можно получить еще список орфографических ошибок и узнать что-то новое из грамматики английского языка (c) http://www.rsdn.ru/forum/cpp/4720035.1.aspx
Ну, если рантайм с дефектами считать "хорошей фичей языка", то да.
S>Насколько я понимаю, сказано о MinGW.
S>Но в "дистрибутиве" MinGW присутствует не только original (old) Visual C runtime, MSVCRT S>а также C runtime-ы студий, от 6-ой, до 10-й.
S>Тогда не понятна фраза, упомянутая выше.
насколько я помню ту тему, там как раз таки говорилось о том, что микрософтовский рантайм с багами.
и таки да, MinGW пока не имеет собственного рантайма.
сейчас пилим с коллегами в рамках mingw-w64 собственный рантайм ,который будет лишен микрософтовских извечных багов, получит расширение в плане POSIX насколько это возможно в вендуз, и возможность статической линковки. (ведь от msvcrt.dll невозможно отцепиться в принципе(легально))
S>Выбор VS, не дает что-либо сверх, того что можно получить, выбрав MinGW.
только минусы.
S>Может существуют в природе, реализации С runtime, на платформе windows, не microsoft ?
нет.
S>P.S. glibc же нет под MinGW, я правильно понимаю ? или есть ?
glibc это не то что ты подумал. реализация С-рантайма в линукс зовется libc.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, niXman, Вы писали:
S>>Выбор VS, не дает что-либо сверх, того что можно получить, выбрав MinGW. X>только минусы.
да конечно, куча расширений языка, в т.ч. для взаимодействия с другими языками, ИДЕ, это все минусы.
как там кстати, MinGW уже научилась генерить .pdb файлы? или там есть что-то свое для postmortem отладки?
Здравствуйте, Abyx, Вы писали:
A>Здравствуйте, niXman, Вы писали:
S>>>Выбор VS, не дает что-либо сверх, того что можно получить, выбрав MinGW. X>>только минусы.
A>куча расширений языка
куча нарушений стандарта.
A>для взаимодействия с другими языками, ИДЕ
зачем оно? оО
A>как там кстати, MinGW уже научилась генерить .pdb файлы? или там есть что-то свое для postmortem отладки?
объясни, что это такое?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, c-smile, Вы писали:
CS>А кстати почему?
по объему, ооочень много кода придется писать. откладывали, не до этого было. сейчас, mingw-w64 очень хорошо поддерживает WINAPI, вот и время появилось для написания своего с-рантайма.
к концу года, планируем, хотя бы в бету выйти.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, c-smile, Вы писали:
S>>>Может существуют в природе, реализации С runtime, на платформе windows, не microsoft ?
X>>нет.
CS>А кстати почему?
да наверняка есть, у bcc или dmc.
открытых только нету
Здравствуйте, niXman, Вы писали:
S>>>>Выбор VS, не дает что-либо сверх, того что можно получить, выбрав MinGW. X>>>только минусы.
A>>куча расширений языка X>куча нарушений стандарта.
расширения языка это не нарушения стандарта, если ты о них
к тому же нарушения стандарта и в гцц есть, ну и что?
A>>для взаимодействия с другими языками, ИДЕ X>зачем оно? оО
что — оно?
ИДЕ зачем? даже хз как объяснить. с кодом работать, ALM всякое там
а взаимодействие с другими языками нужно тогда когда в ОС развито много разных языков, а не один только Си.
COM там всякий для скриптов, CLI для .NET, __asm для асма, соглашения вызова функций
A>>как там кстати, MinGW уже научилась генерить .pdb файлы? или там есть что-то свое для postmortem отладки? X>объясни, что это такое?
что именно? pdb или postmortem отладка?
pdb — это файлы чтобы хранить и распространять отладочную информацию
postmortem отладка — это отладка минидампов (aka крешдампов)
упаковываешь программу какойнить themida, даешь юзеру, прога у юзера падает, он тебе отправляет крешдамп, открываешь его в отладчике и отлаживаешь.
а у вас в никсах как?
Здравствуйте, Abyx, Вы писали:
A>>>куча расширений языка X>>куча нарушений стандарта. A>расширения языка это не нарушения стандарта, если ты о них A>к тому же нарушения стандарта и в гцц есть, ну и что?
Ну, не сравнить с художествами VS.
A>а взаимодействие с другими языками нужно тогда когда в ОС развито много разных языков, а не один только Си. A>COM там всякий для скриптов, CLI для .NET, __asm для асма, соглашения вызова функций
Какое отношение все это имеет к компилятору? COM вроде — это чистый Си, не? .NET в С++-компиляторе нафиг не уперся, асм в GCC всегда был.
A>упаковываешь программу какойнить themida, даешь юзеру, прога у юзера падает, он тебе отправляет крешдамп, открываешь его в отладчике и отлаживаешь. A>а у вас в никсах как?
strip foo -f foo.debug
debug info из foo переехала в foo.debug, foo теперь без debug info, его можно отправлять клиенту.
Здравствуйте, Abyx, Вы писали:
A>расширения языка это не нарушения стандарта, если ты о них
зачем они, если они не переносимы и не стандартизованы?
A>к тому же нарушения стандарта и в гцц есть, ну и что?
если ты говоришь о расширениях — да, есть. но они не нужны в 99% случаев.
если же ты говоришь про реальные нарушения стандарта — их в разы меньше, чем в масдайке.
A>pdb — это файлы чтобы хранить и распространять отладочную информацию
gcc умеет. в мингве не проверял.
A>postmortem отладка — это отладка минидампов (aka крешдампов)
смотри выше.
A>упаковываешь программу какойнить themida, даешь юзеру, прога у юзера падает, он тебе отправляет крешдамп, открываешь его в отладчике и отлаживаешь. A>а у вас в никсах как?
так же.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, niXman, Вы писали:
X>зачем они, если они не переносимы и не стандартизованы?
единственное, что я когда-либо юзал из расширений GCC — typeof(). да и то, пока не появился decltype()
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, jazzer, Вы писали:
A>>а взаимодействие с другими языками нужно тогда когда в ОС развито много разных языков, а не один только Си. A>>COM там всякий для скриптов, CLI для .NET, __asm для асма, соглашения вызова функций
J>Какое отношение все это имеет к компилятору? COM вроде — это чистый Си, не? .NET в С++-компиляторе нафиг не уперся, асм в GCC всегда был.
нет, COM на чистом Си это куча страшных макросов и прочей мерзости.
сам понимаешь, руками таблицу виртуальных методов собирать — это несколько неудобно.
а в стандарте С++ внезапно нет никаких *таблиц* методов. вот и вылазят расширения языка.
.NET в С++ компиляторе нужен чтобы делать нормальные мосты с .NET кодом, типа UI/скрипты на дотнете, а логику на С++
asm("") несколько неюзабелен, по сравнению с __asm и __asm {}
A>>упаковываешь программу какойнить themida, даешь юзеру, прога у юзера падает, он тебе отправляет крешдамп, открываешь его в отладчике и отлаживаешь. A>>а у вас в никсах как? J>
J>strip foo -f foo.debug
J>
J>debug info из foo переехала в foo.debug, foo теперь без debug info, его можно отправлять клиенту.
это гуд.
а чем делать крешдамп и чем его отлаживать?
Здравствуйте, niXman, Вы писали:
X>Здравствуйте, niXman, Вы писали:
X>>зачем они, если они не переносимы и не стандартизованы? X>единственное, что я когда-либо юзал из расширений GCC — typeof(). да и то, пока не появился decltype()
если программы не писать — даже typeof юзать не придется
Здравствуйте, niXman, Вы писали:
A>>pdb — это файлы чтобы хранить и распространять отладочную информацию X>gcc умеет. в мингве не проверял.
что умеет? pdb это конкретный формат файла.
A>>postmortem отладка — это отладка минидампов (aka крешдампов) X>смотри выше.
смотри ответ там же
A>>упаковываешь программу какойнить themida, даешь юзеру, прога у юзера падает, он тебе отправляет крешдамп, открываешь его в отладчике и отлаживаешь. A>>а у вас в никсах как? X>так же.
пока не заметил.
Здравствуйте, niXman, Вы писали:
A>>а чем делать крешдамп и чем его отлаживать? X>крешдампы создает ядро. используются gdb, как обычно.
тема про винду, если ты вдруг забыл