v1.0.46 fails to start MCP server on Ubuntu 20.04
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 6
説明
### Describe the bug
When upgrading to v1.0.46 on my ubuntu 20.04 machine, I noticed that the MCP servers don't start anymore. After investigating, this seems to be because the runtime (native/runtime/runtime.linux-x64-gnu.node) is compiled for glibc 2.33 or later, but Ubuntu 20.04 only ships with 2.31.
I used a different copilot on a different machine to solve the problem, which did the following:
_1. ELF-patched 4 .node files to remove the VERNEED version requirements for GLIBC_2.33/GLIBC_2.34 (using a Python script + patchelf --clear-symbol-version), and added libpthread.so.0/libdl.so.2 to their NEEDED entries where required
2. Built /home/user/.local/lib/glibc_compat.so — a small C shim that exposes stat64/fstat64 as public symbols (wrapping glibc
2.31's internal __xstat64/__fxstat64)
3. Replaced /home/user/.local/bin/copilot with a wrapper script that sets LD_PRELOAD=glibc_compat.so before launching copilot.bin_
### Affected version
Github Copilot CLI 1.0.46
### Steps to reproduce the behavior
1. Fire up a Ubuntu 20.04
2. Install copilot 1.0.46 (maybe latest as well?)
3. Start copilot and observe error messages about MCP server failing to start due to some npm issue (a bit misleading).
### Expected behavior
_No response_
### Additional context
_No response_
コントリビューションガイド
調査の方向性
まず、記載されているインストール手順と起動手順に従って、Ubuntu 20.04 での MCP の起動失敗を再現します。native/runtime/runtime.linux-x64-gnu.node とインストール済みの copilot launcher を調査し、バイナリの GLIBC 要件をホストの glibc 2.31 と比較します。v1.0.46 が npm に関連する誤解を招くエラーなしで MCP サーバーを起動できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- c, node.js, python, shell, ubuntu
- 領域
- cli, operating-systems
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 42/100