Как скомпилировать файл сборки .s в Code::Blocks

Как скомпилировать файл сборки ".s" в Code::Blocks??

У меня есть файл ".s", написанный на ассемблере AT&T, который является функцией.

У меня есть другой код на С++.

Как мне скомпилировать проект в Code::Blocks??

Заранее спасибо.

Env: я использую Code::Blocks 13.12 в Ubuntu 14.04, gcc-4.9 и openFrameworks.


person Adam    schedule 24.05.2014    source источник
comment
Внешний интерфейс g++ (или gcc для программистов на C) обрабатывает файлы сборки с суффиксом .S или .s. Вы пытались просто добавить его в свой проект?   -  person Some programmer dude    schedule 25.05.2014
comment
Да, он отображается как источники ASM, но не связан с ним. undefined reference. Однако, если я извлеку команду ссылки и вручную добавлю к ней файл .o. Они сильно связаны.   -  person Adam    schedule 25.05.2014
comment
Так он хотя бы создает объектный файл? Его просто нет в ссылке? Возможно ошибка в IDE.   -  person Some programmer dude    schedule 25.05.2014
comment
нет, нет, он не создал объектный файл. Я сгенерировал вручную. Извините за расплывчатое объяснение, из-за которого вас неправильно поняли.   -  person Adam    schedule 25.05.2014
comment
В этом случае я бы предположил, что это CodeBlocks, которые не могут обрабатывать файлы сборки, и я бы по-прежнему считал это ошибкой в ​​​​IDE. Возможно, вы захотите немного больше поискать на тему CodeBlocks и файлов сборки, а в худшем случае сообщить об этом разработчикам CodeBlocks как об ошибке.   -  person Some programmer dude    schedule 25.05.2014
comment
@Adam Адам Это не проблема в C::B IDE. .s можно просто добавить в проект, они появляются в виртуальной папке ASM Sources и компилируются и связываются без дальнейшего вмешательства, если что-то не препятствует этому.   -  person Mike Kinghan    schedule 25.05.2014
comment
@MikeKinghan Может быть, мне следует добавить в Env, что я использую openFrameworks. Я не могу скомпилировать may из-за этого.   -  person Adam    schedule 25.05.2014
comment
@MikeKinghan знаете ли вы о конфигурациях кодовых блоков? Не могли бы вы помочь мне проверить конфигурацию openFrameworks C::B? Спасибо.   -  person Adam    schedule 25.05.2014
comment
@ Адам Я знаю о C :: B, но ничего об openFrameworks, и, к сожалению, у меня нет времени в этом разбираться. Если он требует или внедряет какую-то специализированную конфигурацию проектов C::B, которые его используют, проблема вполне может заключаться в том, что она не присуща C::B. Чтобы увидеть, что на самом деле происходит, когда C::B собирает ваш проект, просмотрите выходные данные на вкладке Журнал сборки, а не на вкладке Сообщения о сборке.   -  person Mike Kinghan    schedule 25.05.2014
comment
@MikeKinghan В любом случае спасибо. Я не вижу файл .s, скомпилированный или связанный в Build log.   -  person Adam    schedule 25.05.2014
comment
@ Адам Запоздалая мысль. Добавив foo.s (независимо) в проект в разделе Источники ASM, щелкните правой кнопкой мыши ` foo.s` и в меню выберите Свойства -> Построить. По умолчанию должны быть отмечены все поля Скомпилировать файл, Связать файл, Принадлежит целевым объектам {Отладка|Выпуск. Они?   -  person Mike Kinghan    schedule 25.05.2014
comment
@MikeKinghan Да, они проверены, но не отображаются в журнале сборки C::B.   -  person Adam    schedule 25.05.2014
comment
Возможно, в вашем случае вам нужно предоставить собственный Makefile.   -  person Chnossos    schedule 25.05.2014
comment
IIRC, вы можете настроить C::B на использование make-файла для процесса сборки. Если вы знаете, как это сделать, или готовы потратить время на обучение, вы можете написать make-файл для сборки и настроить C::B для его использования. И IMO, написание make-файла — полезный навык для любого, кто пишет скомпилированный код.   -  person Tyler    schedule 25.05.2014


Ответы (1)


Большое спасибо arturo за то, что он решил мою проблему на форуме openFrameworks, ссылка на ответ:

http://forum.openframeworks.cc/t/how-to-add-assembly-file-into-codeblocks/15942

OpenFrameworks использует .S расширение S с большой буквы для файла сборки под Linux.

person Adam    schedule 25.05.2014