簡體   English   中英

突然,Go 語言的 Google Cloud API 到語音轉文本無法正常工作! /lib64/libc.so.6:未找到版本“GLIBC_2.32”

[英]Suddenly, the Go language Google Cloud API to speech-to-text is not working! /lib64/libc.so.6: version `GLIBC_2.32' not found

我編寫了一個Go program ,它獲取一個錄音文件並將其前 59 秒提交(完全避免使用谷歌雲存儲的東西,由於多種原因,在大量服務器上使用它是不切實際的)到谷歌語音轉文本 API。 它在 Ubuntu、CentOS6 和 CentOS7 上運行良好,直到本周末。 我剛剛升級了一個運行 Ubuntu 22.04 的系統。 我不得不更改代碼。 go build運行良好。 但是當我在 CentOS6 或 7 上運行它時:

[murf@0b06ac9134ab stt3]$ ./stt3
./stt3: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by ./stt3)
./stt3: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by ./stt3)
[murf@0b06ac9134ab stt3]$ 

在 centOS6 和 7 上都安裝了 golang,在這些機器上本地構建了 exec,結果相同。

我做了一些研究,發現glibcgolang的一個問題,但僅限於需要它的一些功能的代碼中。 重新編譯以強制使用舊版本的glibc似乎是一個可行的選擇。

在我看來,谷歌更新了Go API libraries ,並使它們依賴於更新版本的glibc .... 擺脫這種依賴的唯一方法是重新編譯所有 Google Cloud API Go 庫源CentOS6(最古老的 glibc)。 可能還得在centOS7上重新編譯,誰知道呢。 Go 的可移植性就這么多。

所以,問題是:

  • Google Cloud API Go 庫的來源到底在哪里?
  • 為什么他們這么難找? 它們是專有的嗎?
  • 我是否應該放棄 Google 的東西,轉而使用 Nuance 或其他任何一家?
  • 我什至如何報告他們代碼中的錯誤?

由於與 glibc 的動態鏈接,請嘗試構建靜態鏈接版本:

go build -tags netgo,osusergo .

使用-tags osusergo,netgo強制靜態構建沒有依賴庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM