Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Bundled `idlc` in cyclonedds 11.0.1 Linux wheel crashes with segmentation fault

オープン
#336 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
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 を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

eclipse-cyclonedds/cyclonedds-python のほかの issue

eclipse-cyclonedds/cyclonedds-python の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。