亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法通過 Windows 上的 TDM-GCC 使用 cgo 編譯 Go 應用程序

無法通過 Windows 上的 TDM-GCC 使用 cgo 編譯 Go 應用程序

Go
長風秋雁 2022-08-01 17:15:18
我已經安裝了TDM-GCC-64發行版,并設置為PATH變量。我仍然無法 github.com/mattn/go-sqlite3 安裝 cgo 發行版。在我閱讀最相關的問題答案(This)之前,我已經安裝了CygWin。但是,安裝 tdm 分配沒有任何區別。我在嘗試運行應用程序時收到以下錯誤:c:\go\pkg\tool\windows_amd64\link.exe: running gcc failed: exit status 1/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lmingwex/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lmingw32collect2: error: ld returned 1 exit status
查看完整描述

1 回答

?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

似乎您的Go安裝仍在使用Cygwin發行版來調用,很可能是因為環境變量設置。嘗試在環境變量前面加上 Mingw64 分發目錄的路徑(這不會持續存在,因此您需要在同一命令行窗口中嘗試):gccPATHPATHbin\go run

set PATH=C:\Path\To\Mingw64\Installation\bin;%PATH%
go run whatever.go

(注意:確保你有。如果您的Mingw64發行版已安裝在其中,則\binC:\Mingw64C:\Mingw64\bin)

如果上述內容有幫助,并且您想要永久解決此問題(并且您不依賴于命令行中的Cygwin工具,因為下面會將某些命令替換為Mingw64命令),請確保在您的環境中,Mingw64的變量路徑位于Cygwin路徑之前。您可以通過執行以下操作來執行此操作:PATH

  1. 按 Windows 鍵 + R 以顯示“運行”對話框

  2. 鍵入并按 Enter 鍵以顯示“系統變量”對話框rundll32.exe sysdm.cpl,EditEnvironmentVariables

  3. 在名為“用戶名的用戶變量”的頂部部分,雙擊“變量”列所在的行以顯示“編輯環境變量”對話框Path

  4. 現在檢查一下,Mingw64安裝/bin目錄的路徑是否在Cygwin安裝/bin目錄路徑所在的行上方。如果它在下面,請單擊它以選擇它,然后單擊“向上移動”按鈕,根據需要多次將其帶到Cygwin路徑上方。

  5. 完成后,使用“確定”按鈕關閉兩個對話框

雖然你可以在Cygwin中安裝mingw64軟件包,但它很可能與Go工具不兼容,官方文檔建議Mingw64 / MSYS作為編譯器套件獲得 - 我強烈建議使用文檔中鏈接的最新發行版。gcc


查看完整回答
反對 回復 2022-08-01
  • 1 回答
  • 0 關注
  • 682 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號