Измените Make, чтобы создать свой языковой проект Go

задняя часть Эфириум Открытый исходный код
Измените Make, чтобы создать свой языковой проект Go

До прочтения этой статьи, когда вы упаковывали проект, разработанный на языке Go, вы набирали прямо в командной строке:

go build .

Это при разработке и отладке:

go run main.go

Затем я увидел, что запущен проект языка Go с открытым исходным кодом:

make build

или

make install

Мы упаковываем и запускаем этот процесс, и более подходящим термином является создание проекта.

Позвольте представить вам сегодняMakefileЭтот широко используемый инструмент сборки с открытым исходным кодом подходит не только для Go, но и для проектов на языке C или C++.

01 Введение, чтобы сделать

В разработке программного обеспечения make часто рассматривается как инструмент сборки программного обеспечения. Этот инструмент в основном реализует автоматическое создание программного обеспечения путем чтения файла с именем «makefile» или «Makefile».

Он проверяет зависимости между связанными файлами с помощью концепции, называемой «целью».Система проверки зависимостей очень проста, в основном путем сравнения времени модификации файлов.

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

Он используется во многих проектах с открытым исходным кодом.

Это скриншот исходного кода на GitHub на популярном в последнее время Эфириуме, других скриншотов делать не буду, далее расскажу, как использовать его для сборки нашего проекта.

02 Установка

Если у вас система Mac, система поставляется с ней. Если это Linux, вам нужно установить make самостоятельно. Команда очень проста.

Команда make install системы centons:

yum install -y make

03 Создайте файл конфигурации

Я создал здесь новый проект, и каталог проекта выглядит следующим образом:

main.goИсходный код внутри выглядит следующим образом:

Он ничем не отличается от наших предыдущих проектов, просто еще одинMakefileфайл, если вы хотите использоватьMakefileЧтобы построить свой проект, вам нужно создать это в своем проектеMakefileдокумент.

Здесь я размещаю простойMakefileИсходный код файла:

BINARY_NAME=App
run:
	go build -o bin/$(BINARY_NAME) -v
	./bin/$(BINARY_NAME)

Объясните, что означают приведенные выше строки:

  • Первая строка объявляет переменнуюBINARY_NAMEего ценностьApp, что удобно для последующего использования
  • Вторая строка объявляетtarget, на самом деле, вы можете понять это как внешний метод
  • Третья строка, этоtargetСкрипт выполняется при вызове, эта строка является проектом сборки, а скомпилированный бинарный файл помещается в корневую директорию текущего проектаbinВ каталоге имя является переменнойBINARY_NAMEзначение
  • Четвертая строка, эта строка предназначена для непосредственного выполнения текущегоbinбинарники в каталоге

Уведомление:Третья строка должна быть использована перед четвертой строкойtabключевой отступ, иначе он сообщит о следующей ошибке:

Makefile:3: *** missing separator.  Stop.

04 Начать строительство

Открываем наш терминал и выполняем напрямую:

make run

Он начинает строиться, и эффект следующий:

Что ж, на этот раз я поделюсь этим с вами здесь, а позже продолжу углублять.