В чем разница между опцией компилятора `-O0` и опцией` -Og`?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 В чем разница между опцией компилятора `-O0` и опцией` -Og`?

Сообщение Anonymous »

Когда я хочу провести отладку программ C или C ++, меня научили использовать -O0 для выключения оптимизации, а -ggdb внедрять символы в исполняемый файл, которые оптимизируются для использования GNU GDB Clang, который я использую (или, вы можете использовать -Deglldb для llvm/clang. -g для общих символов отладки, но это не будет так же хорошо, как -ggdb , по -видимому, ...). Тем не менее, я недавно наткнулся на то, что кто -то сказал, чтобы использовать -og (вместо -O0 ), и это застало меня с самостоятельной. Конечно же, он в Man GCC < /code> !: < /p>
Оптимизировать опыт отладки. -Og включает оптимизации, которые не мешают отладке. Это должен быть уровень оптимизации выбора для стандартного цикла редактирования-компиль-дебуг,
, предлагая разумный уровень оптимизации при сохранении быстрого компиляции и хорошего опыта отладки. < /P>
< /blockquote>
Итак, в чем разница? Вот -O0 Описание из Man GCC :
сократить время компиляции и сделать отладку давать ожидаемые результаты. Это по умолчанию. < /P>
< /blockquote> четко говорит -og «должен быть уровнем оптимизации выбора для стандартного цикла редактирования compile -debug», хотя.
Это заставляет его звучать как -o0 действительно «без оптимизации», тогда как -og -это «некоторые оптимизации, но только те, которые не взаимосвязаны с дебатом». Это правильно? Итак, что мне следует использовать и почему? (Читайте это внимательно, это совсем не является дубликатом): в чем разница между -O0, -O1 и -G
Мой ответ на отладку>

Подробнее здесь: https://stackoverflow.com/questions/633 ... -og-option
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»