這篇文章給大家介紹使用golang怎么在64位的linux系統(tǒng)中編譯一個(gè)32位的程序,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
在進(jìn)賢等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都營(yíng)銷網(wǎng)站建設(shè),外貿(mào)營(yíng)銷網(wǎng)站建設(shè),進(jìn)賢網(wǎng)站建設(shè)費(fèi)用合理。目標(biāo):在64位linux系統(tǒng)上編譯出32位程序。
操作:
1.執(zhí)行 go env 查看當(dāng)前go環(huán)境配置
2.執(zhí)行 export GOARCH=386 配置go輸出系統(tǒng)平臺(tái)為32位
3.go build 編譯程序
4.使用file main 指令查看編譯出的可執(zhí)行程序是否為32位
實(shí)踐圖片:
補(bǔ)充:golang float32/64與[]byte互轉(zhuǎn)
網(wǎng)絡(luò)協(xié)議開發(fā)中經(jīng)常需要將int、float、bool等轉(zhuǎn)為二進(jìn)制數(shù)據(jù),float32、64 與[]byte處理:
import ( "encoding/binary" "math" ) func Float32ToByte(float float32) []byte { bits := math.Float32bits(float) bytes := make([]byte, 4) binary.LittleEndian.PutUint32(bytes, bits) return bytes } func ByteToFloat32(bytes []byte) float32 { bits := binary.LittleEndian.Uint32(bytes) return math.Float32frombits(bits) } func Float64ToByte(float float64) []byte { bits := math.Float64bits(float) bytes := make([]byte, 8) binary.LittleEndian.PutUint64(bytes, bits) return bytes } func ByteToFloat64(bytes []byte) float64 { bits := binary.LittleEndian.Uint64(bytes) return math.Float64frombits(bits) }
關(guān)于使用golang怎么在64位的linux系統(tǒng)中編譯一個(gè)32位的程序就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。