chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Go程序打成rpm包,也太簡(jiǎn)單了

馬哥Linux運(yùn)維 ? 來(lái)源:go語(yǔ)言中文網(wǎng) ? 2023-01-05 11:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

# 1. 環(huán)境準(zhǔn)備

首先是 rpmbuild 的相關(guān)依賴,無(wú)論是什么語(yǔ)言寫的程序,只要是打包成 rpm 包,就都需要這些

yuminstall-ygccmakerpm-buildredhat-rpm-config

rpmbuild 的使用,需要你寫不少的配置,非常繁瑣,有研究過(guò)的人自然知道其中的淚。

但大多數(shù)情況下,一個(gè)簡(jiǎn)單的 rpm 包可能就只是執(zhí)行一個(gè)二進(jìn)制文件而已,完全沒(méi)有去花費(fèi)大量的時(shí)間去系統(tǒng)學(xué)習(xí)它們。

于是乎,有人就編寫了一個(gè)開源工具 go-bin-rpm,用它可以很方便的將二進(jìn)制文件打包成 rpm 包。

go-bin-rpm 的作者提供了多種安裝方式

個(gè)人認(rèn)為比較方便的是下面這條命令

wget-O-https://raw.githubusercontent.com/mh-cbon/latest/master/bintray.sh
|GH=mh-cbon/go-bin-rpmsh-xe

執(zhí)行完成后,可以使用 --version 命令查看是否安裝成功

$go-bin-rpm--version
go-bin-rpmversion1.0.0

# 2. 配置文件

go-bin-rpm 的配置文件是 rpm.json ,當(dāng)然你也可以用其他文件名,我這里直接使用默認(rèn)的,這樣后面打包時(shí)就不用指定配置文件的名字。

rpm.json 的內(nèi)容相當(dāng)精簡(jiǎn),且直觀易懂,模板如下

{
"name":"you-service-name",#rpm包名稱
"version":"0.0.1",
"release":"20221110",
"arch":"x86_64",
"summary":"",
"description":"",
"license":"iswbm.com",
"url":"https://gtihub.com/iswbm/!name!",#!name!相當(dāng)于變量,會(huì)取前面rpm包名稱
"files":[
{
"from":"./bin/!name!",
"to":"/usr/local/!name!/",
"base":"",
"type":""
},
{
"from":"./!name!.service",
"to":"/usr/lib/systemd/system/",
"base":"",
"type":""
}
]
}

如果你的 rpm 安裝后是以 service 運(yùn)行的,那 files 要包含如下幾項(xiàng)內(nèi)容:

  1. 二進(jìn)制文件

  2. service 文件

  3. 配置文件(如果需要的話)

其中 service 文件的模板,這邊也給出來(lái)

[Unit]
Description=
After=syslog.targetnetwork.target

[Service]
Environment=key=value
Type=simple
NotifyAccess=all
TimeoutStartSec=0
Restart=always
User=root
ExecStart=/usr/local/xxxx/bin/xxxx

[Install]
WantedBy=multi-user.target

一切準(zhǔn)備好了,就可以使用如下命令

#VERSION和RELEASE請(qǐng)對(duì)應(yīng)替換
go-bin-rpmgenerate-orpms/xxxx-$(VERSION)-$(RELEASE).rpm

如果在不同的平臺(tái)或系統(tǒng)有不同的二進(jìn)制,則可以準(zhǔn)備多個(gè) rpm.json,然后在打包時(shí),使用 -f rpm.json 來(lái)指定配置文件。

# 3. 使用 Makefile

go-bin-rpm 的命令還是比較長(zhǎng),我習(xí)慣寫一個(gè) Makefile 來(lái)方便編譯

VERSION=1.0.0
RELEASE=$(shelldate+"%Y%m%d")

.PHONY:build-go
build-go:
gobuild-o./bin/hello.

.PHONY:build
build:build-go
sed-i"s/VERSION/$(VERSION)/g"rpm.json
sed-i"s/RELEASE/$(RELEASE)/g"rpm.json
mkdir-prpms
go-bin-rpmgenerate-orpms/hellp-$(VERSION)-$(RELEASE).rpm

后面只要使用 make build 就可以直接一步實(shí)現(xiàn) 編譯 + 打包 ,使用上更加順手。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Go
    Go
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    12610
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    696

    瀏覽量

    35271
  • RPM
    RPM
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    18195

原文標(biāo)題:Go 程序打成 rpm 包,也太簡(jiǎn)單了

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    強(qiáng)場(chǎng)赫茲產(chǎn)生及其前沿應(yīng)用綜述

    基于上述強(qiáng)場(chǎng)赫茲源的發(fā)展,該綜述系統(tǒng)評(píng)述其在多個(gè)科學(xué)前沿的變革性應(yīng)用 近期,中科院上海光機(jī)所宋立偉研究員等在美國(guó)物理聯(lián)合會(huì)旗艦期刊《Applied Physics Reviews》發(fā)表題為《強(qiáng)場(chǎng)
    的頭像 發(fā)表于 04-14 07:40 ?21次閱讀
    強(qiáng)場(chǎng)<b class='flag-5'>太</b>赫茲產(chǎn)生及其前沿應(yīng)用綜述

    PCB別人地你地,但別人的隔離度比你好10dB不止

    表層走線在高頻的串?dāng)_那么大的啊,都拉開15H的距離了,串?dāng)_居然只有20dB左右。不然你們以為呢?所以說(shuō)表層的串?dāng)_很大,這下信了吧。因此大家才希望通過(guò)地哪怕降低個(gè)4-5dB其實(shí)也是很大的改善。我們
    發(fā)表于 04-13 11:21

    深入解析SMSC EMC2102:RPM風(fēng)扇控制器的卓越之選

    深入解析SMSC EMC2102:RPM 風(fēng)扇控制器的卓越之選 在電子設(shè)備的設(shè)計(jì)中,散熱管理至關(guān)重要,它直接影響著設(shè)備的性能和穩(wěn)定性。SMSC EMC2102作為一款基于RPM的風(fēng)扇控制器,憑借其
    的頭像 發(fā)表于 04-07 10:30 ?86次閱讀

    MAX31790:6通道PWM輸出風(fēng)扇RPM控制器的深度解析

    MAX31790:6通道PWM輸出風(fēng)扇RPM控制器的深度解析 在電子設(shè)備的散熱系統(tǒng)中,風(fēng)扇的精確控制至關(guān)重要。MAX31790作為一款6通道PWM輸出風(fēng)扇RPM控制器,為多風(fēng)扇系統(tǒng)的控制和監(jiān)測(cè)提供
    的頭像 發(fā)表于 03-02 09:55 ?245次閱讀

    linux-arm開發(fā)環(huán)境的簡(jiǎn)單配置

    linux-arm開發(fā)環(huán)境簡(jiǎn)單配置 關(guān)于linux-arm開發(fā)環(huán)境簡(jiǎn)單配置是ARM學(xué)習(xí)的第一步,很多初學(xué)者會(huì)在這問(wèn)題上糾結(jié)很久都不能配置好開發(fā)環(huán)境。推薦大家看一下韋東山視頻,講得很詳細(xì),代碼基本上
    發(fā)表于 01-13 07:56

    低成本TLI4971/TLE4971電流傳感器評(píng)估套件——MS2Go與S2Go

    )的TLI4971/TLE4971電流傳感器MS2Go和S2Go評(píng)估套件,這兩款套件為我們提供一種低成本、高效的方式來(lái)快速評(píng)估TLI4971/TLE4971電流傳感器。 文件下載: Infineon
    的頭像 發(fā)表于 12-19 16:50 ?1065次閱讀

    KIT_XMC14_2GO開發(fā)板:功能特性與硬件解析

    KIT_XMC14_2GO開發(fā)板:功能特性與硬件解析 在電子開發(fā)領(lǐng)域,一款性能出色且功能豐富的開發(fā)板對(duì)于工程師來(lái)說(shuō)至關(guān)重要。今天,我們就來(lái)詳細(xì)探討一下KIT_XMC14_2GO開發(fā)板,它配備英飛凌
    的頭像 發(fā)表于 12-19 10:20 ?572次閱讀

    探索TLE493D-P3XX-MS2GO 3D 2Go套件:開啟3D磁傳感器評(píng)估之旅

    )的TLE493D-P3XX-MS2GO 3D 2Go套件為我們提供一個(gè)便捷、高效的解決方案。今天,我們就來(lái)深入了解一下這個(gè)套件,看看它能為我們帶來(lái)哪些便利和驚喜。 文件下載: Infineon
    的頭像 發(fā)表于 12-18 17:15 ?1274次閱讀

    誘TAC系列是哪種封裝形式的電容?

    誘TAC系列并非電容產(chǎn)品,而是以陶瓷電容(尤其是MLCC)為主的產(chǎn)品線。其核心優(yōu)勢(shì)在于高溫穩(wěn)定性、小型化及高頻性能,與鉭電容的應(yīng)用場(chǎng)景形成互補(bǔ)。以下是對(duì)誘TAC系列及電容相關(guān)信息的詳細(xì)介紹: 一
    的頭像 發(fā)表于 10-28 15:55 ?550次閱讀
    <b class='flag-5'>太</b>誘TAC系列是哪種封裝形式的電容?

    【道生物聯(lián)TKB-623評(píng)估板試用】TKB-623評(píng)估板雙機(jī)通訊測(cè)試_程序開發(fā)

    與電腦挺通信,可以連接到其他MCU設(shè)備進(jìn)行通信。 為了方便后續(xù)的測(cè)試,我研究道生物聯(lián)提供的文檔,開發(fā)了一個(gè)通訊測(cè)試程序。 一、硬件連線 為了方便簡(jiǎn)單測(cè)試,我用了兩個(gè)一樣的USB2T
    發(fā)表于 10-18 23:54

    gitee不能用了,切換不到github,軟件都無(wú)法使用,怎么解決?

    gitee不能用了,切換不到github,軟件都無(wú)法使用了,這個(gè)要怎么解決呀
    發(fā)表于 10-09 08:41

    CFA科普系列01|EDA工具裝不上?可能不是你技術(shù)差,而是少了這兩個(gè)命令

    的 .exe 安裝,內(nèi)部包含了程序的二進(jìn)制、說(shuō)明信息、安裝路徑等元數(shù)據(jù)。RPM 安裝后會(huì)被系統(tǒng)記錄并可以通過(guò)命令進(jìn)行管理。 2.2 RPM
    發(fā)表于 05-09 15:27

    用一套Linux系統(tǒng),撐起整個(gè)芯片設(shè)計(jì)平臺(tái)?CFA團(tuán)隊(duì)教你如何搭好EDA智算平臺(tái)的技術(shù)底座

    系的“基礎(chǔ)功” RPM(Redhat Package Manager)是最基礎(chǔ)的軟件包管理工具,它由Red Hat公司提出的一種軟件包管理標(biāo)準(zhǔn)。 是Linux各發(fā)行版中應(yīng)用最廣泛的軟件格式之一(還有
    發(fā)表于 05-07 14:44

    浴室鏡能這么智能?自動(dòng)除霧+時(shí)間顯示,方便了!

    自動(dòng)除霧+時(shí)間顯示浴室鏡能這么智能?方便了清晨起床,睡眼惺忪地走到浴室鏡前,鏡面卻蒙著一層霧氣;夜晚護(hù)膚,想要調(diào)暗燈光營(yíng)造溫馨氛圍,卻找不到開關(guān);匆忙出門,總想隨時(shí)知道時(shí)間和溫度……這些生活中
    的頭像 發(fā)表于 04-30 18:33 ?1299次閱讀
    浴室鏡<b class='flag-5'>也</b>能這么智能?自動(dòng)除霧+時(shí)間顯示,<b class='flag-5'>太</b>方便了!

    電子亮相2025慕尼黑上海電子展

    為期三天的 2025 慕尼黑上海電子展(electronica China 2025)圓滿落幕,作為電子行業(yè)的重要年度盛會(huì),吸引眾多全球知名電子企業(yè)與專業(yè)觀眾齊聚一堂。華電子攜最新技術(shù)成果精彩
    的頭像 發(fā)表于 04-24 15:21 ?2653次閱讀
    華<b class='flag-5'>太</b>電子亮相2025慕尼黑上海電子展