Bundled `idlc` in cyclonedds 11.0.1 Linux wheel crashes with segmentation fault
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 48/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- python
- 領域
- build-system, cli
調査の方向性
まず、同梱された .libs/idlc 実行ファイル、cyclonedds.tools.wheel_idlc command()、および空の環境でのローダーコマンドを使ってクラッシュを再現します。wheel の内容と併せて cyclonedds/idlc.py と cyclonedds/tools/wheel_idlc/init.py を読みます。idlc -h が正常に終了し、idlc -l py example.idl を segmentation fault なしで実行できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Description
The idlc executable bundled with cyclonedds==11.0.1 crashes immediately with a segmentation fault on Linux.
The issue has been reproduced on both Ubuntu 22.04 and Ubuntu 24.04. It is also reproducible in a newly created Ubuntu Docker container.
The same behavior occurs when running the bundled idlc directly, through cyclonedds.tools.wheel_idlc, and when invoking the dynamic loader with --list.
Tested environments
Ubuntu 22.04
OS: Ubuntu 22.04
Architecture: x86_64
cyclonedds: 11.0.1
Wheel SHA256:
9eaa0e08ea41206b495f36fa4c008ff89113f78a39e54f4a17793d9a68e7b978
Ubuntu 24.04
OS: Ubuntu 24.04
Architecture: x86_64
cyclonedds: 11.0.1
Wheel SHA256:
3e96507088c57165f7c189c3a85be866f74c7449fb0cbc6316ad306e5f599be1
The issue was also reproduced in a clean Ubuntu Docker container.
Steps to reproduce
Install the package:
python3 -m pip install cyclonedds==11.0.1
Locate the installed idlc:
python3 -m pip show -f cyclonedds | grep idlc
For example, on Ubuntu 22.04:
cyclonedds/.libs/idlc
cyclonedds/__idlc__.py
cyclonedds/tools/wheel_idlc/__init__.py
The bundled executable is located at:
~/.local/lib/python3.10/site-packages/cyclonedds/.libs/idlc
Run it directly:
~/.local/lib/python3.10/site-packages/cyclonedds/.libs/idlc -h
Actual result
Segmentation fault (core dumped)
Reproduction through the Python wrapper
Run:
python3 -c \
'from cyclonedds.tools.wheel_idlc import command; command()' \
-h
Actual result
Segmentation fault (core dumped)
Reproduction with an empty environment
SITE=/home/user/.local/lib/python3.10/site-packages
IDLC=$SITE/cyclonedds/.libs/idlc
env -i \
HOME="$HOME" \
PATH=/usr/bin:/bin \
/lib64/ld-linux-x86-64.so.2 --list "$IDLC"
echo $?
Actual result
Segmentation fault (core dumped)
139
Expected behavior
Running:
idlc -h
or the bundled equivalent:
/path/to/site-packages/cyclonedds/.libs/idlc -h
should display the idlc command-line help and exit normally.
It should also be possible to use the bundled compiler for Python IDL generation, for example:
idlc -l py example.idl
without the executable terminating with a segmentation fault.
- 主要言語
- Python
- スター
- 110
- フォーク
- 68
- 平均マージ
- 3日 5時間
- マージ済み PR(30日)
- 1
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
eclipse-cyclonedds/cyclonedds-python のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
-
Generated Python code is not interoperable when a union contains a member called "value"再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
eclipse-cyclonedds/cyclonedds-python#333 · コメント 1 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
eclipse-cyclonedds/cyclonedds-python の issue をすべて見る
似ている issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 68/100
FavioVazquez/showtime#101 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
rossant/awesome-math#199 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
nautechsystems/nautilus_trader#5365 ·
メンテナーはふだん 1 日以内に返信
-
Examples say cnxオープンdocumentation embedded
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信