Code::Blocks Linking Options

Я настраивал SDL в Code::Blocks 17.12, используя MinGW в Windows, и увидел странный набор опций для компоновщика. Я новичок в этом, так что это может быть очевидно. Загрузите проект, перейдите на вкладку " Проект " вверху, нажмите " Свойства", затем выберите параметры сборки проекта. Если вы нажмете на настройки компоновщика, вы найдете две вещи. Одна содержит список библиотек для связи, а другая содержит список параметров, предоставленных компоновщику в самой команде. Вот скриншот того, как выглядит окно: Code:: Blocks Linker Options

Я обнаружил, что удаление библиотек ссылок вообще не портит сборку, а удаление параметров компоновщика все портит. Это то, что происходит только с SDL? В чем разница между этими двумя разделами? Что эти флаги говорят компоновщику делать?

1 ответ

Решение

Хорошо, это была довольно простая ошибка. Проведя некоторое исследование, я нашел этот пост на форумах, объясняющий проблему. Библиотеки должны быть загружены в том же порядке! Чтобы ответить на мой первый вопрос, в SDL есть некоторые странности, но эта проблема может возникнуть с любым набором библиотечных файлов. Во-вторых, эти два раздела в основном одинаковы, когда речь идет о связывании файлов статической библиотеки, но параметры компоновщика дают вам больше контроля и позволяют указывать другие флаги, которые может использовать компоновщик. Наконец, эти флаги сообщают компоновщику, чтобы он посмотрел в предоставленные каталоги и внедрил их в вашу программу, что позволяет вам использовать функциональность, присутствующую в библиотеке, в вашем конечном исполняемом файле.

Вот изображение, показывающее, что я сделал. Используя те же спецификации, что и ранее, сборка прошла отлично, и я успешно смог запустить финальную программу. Имена библиотек предоставляются в том же порядке, в каком они были в настройках компоновщика

Другие вопросы по тегам