Golang的linux運行環境的安裝與配置

很多新手在學go時,linux下的配置環境一頭霧水,總結下,可供參考!

--------------------------------------Golang的運行環境的安裝與配置--------------------------------------

將壓縮包放在/home/tools/下

解壓

tar -zxvf go1.23.6.linux-amd64.tar.gz

進入:cd /usr/local

進行軟連接(直接運行命令,不要建立go文件夾)

ln -s /home/tools/go/ go

變為全局命令:

echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc ?# 持久化配置

source ~/.bashrc ?# 立即生效

查看go版本

[root@localhost bin]# go version

go version go1.23.6 linux/amd64

--------------------------------------配置golang的環境參數--------------------------------------

編輯?/etc/profile?文件,添加以下內容:

export GOROOT=/usr/local/go

export GOPATH=/data/go??設置自己的工作目錄

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

export GO111MODULE=on

export GOPROXY=https://goproxy.cn,direct?國內修改為cn

生效配置:

source /etc/profile

[root@localhost gate_svr]# vim /etc/profile

[root@localhost gate_svr]# source /etc/profile

清除go的緩存和包緩存:

[root@localhost gate_svr]# go clean -cache

[root@localhost gate_svr]# go clean -modcache

說明:

GOROOT?為 Golang 安裝路徑

GOPATH?為工作空間目錄,需包含?src、pkg(依賴庫)、bin?子目錄?

GOPROXY?用于加速依賴包下載?

?驗證環境?

go version ???# 查看版本

go env ???????# 檢查環境變量

?創建目錄結構?

mkdir -p $GOPATH/{src,pkg,bin}

需確保工作空間與?GOROOT?路徑不同。

設置用戶權限

sudo chown -R root:root /data/go

sudo chmod 775 /data/go

開始會遇到:編譯代碼遇到網絡鏈接各種庫連接被拒絕的問題:

go: downloading github.com/xuri/excelize/v2 v2.4.1 ../../common/component/log/log.go:5:2: github.com/natefinch/lumberjack@v2.0.0+incompatible: Get "https://goproxy.cn/github.com/natefinch/lumberjack/@v/v2.0.0+incompatible.zip": dial tcp: lookup goproxy.cn on [::1]:53: read udp [::1]:58615->[::1]:53: read: connection refused

解決辦法:

看看網絡是否通暢,

nslookup www.baidu.com

有IP的情況下,防火墻或者dns解析的問題:

echo?"nameserver 8.8.8.8" | sudo tee /etc/resolv.conf

echo "nameserver 8.8.4.4" | sudo tee -a /etc/resolv.conf

systemctl restatus NetworkManager??重啟網卡


--------------------------------------測試工作目錄--------------------------------------

?創建測試程序?

mkdir -p /data/go/src/hello

vim /data/go/src/hello/main.go

內容:

package main

import "fmt"

func main() { fmt.Println("Workspace path: /data/go") }

?編譯運行?

cd /data/go/src/hello

go build ???# 生成二進制文件到當前目錄

./main?????# 運行程序

簡單的生成go.mod文件:

go mod init hello

go mod tidy

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/80395.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/80395.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/80395.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自定義實現elementui的錨點

背景 前不久有個需求,上半部分是el-step步驟條,下半部分是一些文字說明,需要實現點擊步驟條中某個步驟自定義定位到對應部分的文字說明,同時滾動內容區域的時候還要自動選中對應區域的步驟。element-ui-plus的有錨點這個組件&…

Oracle Fusion常用表

模塊表名表描述字段說明sodoo_headers_all銷售訂單頭表sodoo_lines_all銷售訂單行表sodoo_fulfill_lines_all銷售訂單明細行表popo_headers_all采購訂單頭表popo_lines_all采購訂單行表popo_line_locations_all采購訂單分配表popo_distributions_all采購訂單發運表invEGP_SYSTE…

面試常問系列(一)-神經網絡參數初始化-之-softmax

背景 本文內容還是對之前關于面試題transformer的一個延伸,詳細講解一下softmax 面試常問系列(二)-神經網絡參數初始化之自注意力機制-CSDN博客 Softmax函數的梯度特性與輸入值的幅度密切相關,這是Transformer中自注意力機制需要縮放點積結果的關鍵原…

5.9-selcct_poll_epoll 和 reactor 的模擬實現

5.9-select_poll_epoll 本文演示 select 等 io 多路復用函數的應用方法,函數具體介紹可以參考我過去寫的博客。 先綁定監聽的文件描述符 int sockfd socket(AF_INET, SOCK_STREAM, 0); struct sockaddr_in serveraddr; memset(&serveraddr, 0, sizeof(struc…

Python基礎語法(上)

常量和表達式 我們可以使用python來進行一些 - * / %的一些運算 print(1 2 - 3) print(1 2 * 3) print(1 2 / 3) python中的運算規則與數學當中一致,先乘除后加減,有括號的先計算括號里面的。 形如 1 2 - 3 這樣是算式, 在編程語言中稱為 表達式,…

數圖閃耀2025深圳CCFA中國零售博覽會:AI+零售數字化解決方案引發現場熱潮

展會時間:2025年5月8日—10日 地點:深圳國際會展中心(寶安新館) 【深圳訊】5月8日,亞洲規模最大的零售行業盛會——2025 CCFA中國零售博覽會在深圳盛大開幕。本屆展會匯聚全球25個國家和地區的900余家參展商&#xff…

方法:批量識別圖片區域文字并重命名,批量識別指定區域內容改名,基于QT和阿里云的實現方案,詳細方法

基于QT和阿里云的圖片區域文字識別與批量重命名方案 項目場景 ??企業檔案管理??:批量處理掃描合同、發票等文檔,根據編號或關鍵信息自動重命名文件??醫療影像管理??:識別X光、CT等醫學影像中的患者信息,按姓名+檢查日期重命名??電商訂單處理??:從訂單截圖中提…

Mybatis解決以某個字段存在,批量更新,不存在批量插入(高效)(一)

背景 在開發企業級應用時,我們經常需要處理批量數據的插入和更新操作。傳統的逐條處理方式性能低下,而簡單的REPLACE INTO或INSERT ... ON DUPLICATE KEY UPDATE在某些場景下又不夠靈活。本文將介紹一種基于臨時表的高效批量插入/更新方案,解…

JVM、JRE、JDK的區別

JVM JVM全稱Java虛擬機(Java Virtual Machine, JVM),它是運行java字節碼的虛擬機,JVM針對不同的系統有不同的實現,目的運行相同的字節碼有同樣的結果,JVM是“一次編譯,到處運行”實現的關鍵。如下不同的編程語言編譯生成字節碼文…

神經元和神經網絡定義

在深度學習中,神經元和神經網絡是構成神經網絡模型的基本元素。讓我們從基礎開始,逐步解釋它們的含義和作用。 1?? 神經元是什么? 神經元是神經網絡中的基本計算單元,靈感來自于生物神經系統中的神經元。每個人的腦中有數以億…

CDGP重點知識梳理

寫在前面 全文11700字,共82個重點知識 目 錄 考點分布 考試要求 第一章 數據管理-5%

Ubuntu 22.04 安裝配置遠程桌面環境指南

在云服務器或遠程主機上安裝圖形化桌面環境,可以極大地提升管理效率和用戶體驗。本文將詳細介紹如何在 Ubuntu 22.04 (Jammy Jellyfish) 系統上安裝和配置 Xfce4 桌面環境,并通過 VNC 實現遠程訪問。 系統環境 操作系統:Ubuntu 22.04 LTS (Jammy Jellyfish)架構:AMD64安裝…

node提示node:events:495 throw er解決方法

前言 之前開發的時候喜歡使用高版本,追求新的東西,然后回頭運行一下之前的項目提示如下 項目技術棧:node egg 報錯 node:events:495 throw er; // Unhandled error event ^ Error: ENOENT: no such file or directory, scandir F:\my\gi…

【軟件設計師:軟件工程】9.軟件開發模型與方法

一、軟件危機與軟件工程 軟件危機與軟件工程是計算機科學發展中密切相關的兩個概念。 1.軟件危機(Software Crisis) 背景:20世紀60年代至80年代,隨著計算機硬件性能提升,軟件規模與復雜度劇增,傳統開發方法難以應對,導致大量項目失敗。 表現: 成本失控:開發周期長、…

范式之殤-關系代數與參照完整性在 Web 后臺的落寞

最近參加了一個PostgreSQL相關的茶會,感慨良多。原本話題是PostgreSQL 在 SELECT 場景中憑借其成熟的查詢優化器、豐富的功能特性和靈活的執行策略,展現出顯著優勢。在窗口函數(Window Functions)、JOIN 優化、公共表表達式&#…

WebRTC工作原理詳細介紹、WebRTC信令交互過程和WebRTC流媒體傳輸協議介紹

簡介 WebRTC(Web Real-Time Communication)是一項允許在網頁瀏覽器之間進行音視頻通信的技術,基本不需要安裝額外的插件。它的核心特點是支持低延遲的點對點(P2P)通訊,常用于視頻聊天、實時文件共享、多人…

【大語言模型ChatGPT4/4o 】“AI大模型+”多技術融合:賦能自然科學暨ChatGPT在地學、GIS、氣象、農業、生態與環境領域中的應用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千問為代表AI大語言模型帶來了新一波人工智能浪潮,可以面向科研選題、思維導圖、數據清洗、統計分析、高級編程、代碼調試、算法學習、論文檢索、寫作、翻譯、潤色、文獻輔助…

提升編程效率的利器:Zed高性能多人協作代碼編輯器

在當今這個快節奏的開發環境中,一個高效、靈活的代碼編輯器無疑對開發者們起著至關重要的支持作用。Zed,作為來自知名編輯器Atom和語法解析器Tree-sitter的創造者的心血之作,正是這樣一款高性能支持多人合作的編輯神器。本文將帶領大家深入探…

基于51單片機步進電機控制—9個等級

基于51單片機步進電機控制 (仿真+程序+設計報告) 功能介紹 具體功能: 1.使用L298驅動步進電機轉動,可分為9個速度等級(1級最快,9級最慢); 2.使用74HC595驅…

【某OTA網站】phantom-token 1004

新版1004 phantom-token 請求頭中包含phantom-token 定位到 window.signature 熟悉的vmp 和xhs一樣 最新環境檢測點 最新檢測 canvas 下的 toDataURL方法較嚴 過程中 會用setAttribute給canvas 設置width height 從而使toDataURL返回不同的值 如果寫死toDataURL的返回值…