Создание и запуск файла Linux «.a»

Sozdanie I Zapusk Fajla Linux A



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

Понимание того, как создать и запустить файл «.a», имеет решающее значение для эффективной разработки программного обеспечения в среде Linux. Это подробное руководство по установке и настройке файла «.a» в Linux. Давайте выясним, что такое файл Linux «.a», изучим его назначение, структуру и способы его создания и выполнения.

Что такое файл «.a» в Linux?

Файл Linux «.a» — это архивный файл, который служит контейнером для скомпилированного кода и данных. Она широко известна как статическая библиотека, содержащая коды, связанные с вызывающим кодом во время компиляции, которая становится фундаментальной частью приложения. Эти файлы Linux «.a» вносят предварительно скомпилированный фундаментальный вклад в приложение, полностью контрастируя с файлами динамических библиотек Linux «.so», в которых связывание происходит во время выполнения.







Представим себе сценарий, в котором разработчик реализует три разные программы. Зная, что у этих программ существуют общие функции, программист создает библиотеку, которая инкапсулирует эти общие функции и представлена ​​в виде файла «.a». На данный момент важной новостью является то, что файлы Linux «.a» становятся многоразовой коллекцией кода и данных, которую другие разработчики могут использовать в своих проектах.



Предпосылки:

Прежде чем перейти к изучению того, как создать и запустить файл «.a» в Linux, важно знать несколько основных вещей. Есть несколько предварительных условий, которые следует выполнить перед выполнением какой-либо функции в Linux. Они заключаются в следующем:



  • Ubuntu 20.04 или любая последняя версия
  • Доступ к командной строке или окну терминала
  • Учетная запись пользователя, в частности привилегии sudo, для различных файлов и каталогов.

Как создать и запустить файл «.a» в Linux?

Создание и запуск файла Linux «.a» включает в себя ряд шагов: создание, компиляцию и выполнение. Для выполнения этих действий можно использовать разные способы, и мы рассмотрим каждый из них по отдельности. Начнем.





Для запуска и выполнения следующего примера вам понадобится компилятор GCC. Компилятор используется для запуска всех команд для создания и запуска файла Linux «.a»:



Ниже приведены шаги, которые объясняются с помощью различных команд и методов.

Шаг 1. Скомпилируйте исходный файл C

Начните работу с создания исходного файла C с помощью компилятора GCC для компиляции исходных файлов C (.c) в объектные файлы (.o) с помощью следующей команды:

$ GCC -Стена *

Флаг «-Wall» включает все предупреждения, а флаг «-c» указывает GCC на этом этапе только компилировать, а не компоновать.

Шаг 2. Создайте архив библиотеки

Следующим шагом будет создание файла библиотеки. Команда «ar» создает архив статической библиотеки (.a) из объектных файлов. Следовательно, мы используем следующую команду:

$ С -cvq libfile.a *

Эта команда создает статический архивный файл с именем «libfile.a» путем объединения различных объектных файлов с расширением «.o» с помощью команды «ar» (архив) в операционных системах Linux. В этой команде следует обратить внимание на три вещи: «c», «v» и «q». Давайте разберем компоненты и поймем назначение каждого флага и аргумента в контексте этой команды:

ar: выполняет команду архивирования в системах Linux. Основная функция команды «ar» — создание, изменение и извлечение из архива.

-c: Этот флаг предписывает создать новый архив, если он еще не создан или еще не существует. Если архивный файл с данным именем существует, флаг «-c» гарантирует его воссоздание с заменой любого предыдущего содержимого.

-v: подробный флаг отображает подробную информацию о процессе архивирования. Он обеспечивает обратную связь о том, какие файлы добавляются в архив.

-q: «q» означает «быстро добавить». Он запрашивает флаг «ar» для быстрого добавления указанных файлов в архив без проверки повторяющихся символов или трудоемких операций.

libfile.a: имя файла требуется для команды, которая будет создана или изменена. Здесь мы указываем имя файла как «libfile» с расширением «.a», которое указывает, что это архивный файл статической библиотеки.

*.o: «*» в конце команды представляет каждый файл в выбранном каталоге с расширением «.o», которое относится к объектным файлам. Объектные файлы являются результатом компиляции исходного кода и содержат машинный код, который еще не связан с каким-либо окончательным исполняемым файлом.

Шаг 3. Просмотр содержимого библиотеки

Теперь, когда мы создали архив библиотеки, мы можем просмотреть его с помощью команды «ar –t». Команда «ar –t» выводит список всего содержимого, присутствующего в библиотеке.

$ С libfile.a

Команда «ar -t libfile.a» перечисляет все объектные файлы, содержащиеся в архивном файле статической библиотеки с именем «libfile.a», с помощью команды «ar» в операционной системе Linux. Разберем каждый флаг и их функционал:

ar: Как упоминалось ранее, это команда архивирования в системах Linux.

-t: флаг «-t» используется для отображения оглавления архива, отображая имена объектных файлов, хранящихся в «libfile.a».

libfile.a: Чтобы прочитать данные, нам нужно знать имя архивного файла.

Шаг 4. Использование библиотеки в другой программе

Давайте теперь посмотрим, как использовать недавно разработанный файл «.a» для Linux в другой программе. Поскольку мы создали библиотеку, ее теперь можно использовать где угодно и в любой программе, просто добавив библиотеку в команду компиляции. Мы можем сделать это с помощью следующей команды. Он включает в себя все необходимые заголовки и ссылки библиотеки.

$ GCC MyProgramMain.c путь / к / библиотека -lфайл

В этой команде «-L» указывает путь к библиотеке, «-lfile» ссылается на файл библиотеки «library.a», удаляя префикс «lib» и суффикс «.a».

Шаг 5. Запустите файл Linux «.a».

Наконец, мы можем запустить файл «.a». Результат отображается вам сразу после запуска следующего сценария в вашем терминале:

$ . / МояПрограммаГлавная

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

Заключение

Создание и запуск файла «.a» в Linux требует компиляции различных команд, выполняющих создание, компиляцию и связывание файлов. Понимание этих шагов и рабочих функций каждой команды позволяет разработчикам организовывать свой код, использовать внешние библиотеки и разрабатывать масштабируемые программы. Если вам нужно использовать базовые команды, такие как nano и GCC, или вы собираетесь работать с более продвинутыми методами со статическими библиотеками, овладение этими навыками поможет в практической разработке на базе Linux.