AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO

FTBFS with Clang + Arm64 on Windows

オープン
#2,137 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る
Build Issue
主要言語
C++
スター
2.1k
フォーク
505
PR マージ指標
30日以内にマージされた PR はありません

説明

```
In file included from C:/M/B/src/OpenColorIO-2.4.2/src/OpenColorIO/ops/lut1d/Lut1DOpCPU_SSE2.cpp:10:
C:/M/B/src/OpenColorIO-2.4.2/src/OpenColorIO/SSE2.h:354:19: error: incompatible pointer types assigning to '__fp16 *' from 'int16_t *' (aka 'short *')
354 | vst1q_f16((float16_t *)(out+0), rgba);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/clangarm64/lib/clang/20/include/arm_neon.h:39424:26: note: expanded from macro 'vst1q_f16'
39424 | __builtin_neon_vst1q_v(__p0, (int8x16_t)__s1, 40); \
| ^~~~
In file included from C:/M/B/src/OpenColorIO-2.4.2/src/OpenColorIO/ops/lut1d/Lut1DOpCPU_SSE2.cpp:10:
C:/M/B/src/OpenColorIO-2.4.2/src/OpenColorIO/SSE2.h:357:19: error: incompatible pointer types assigning to '__fp16 *' from 'int16_t *' (aka 'short *')
357 | vst1q_f16((float16_t *)(out+8), rgba);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/msys64/clangarm64/lib/clang/20/include/arm_neon.h:39424:26: note: expanded from macro 'vst1q_f16'
39424 | __builtin_neon_vst1q_v(__p0, (int8x16_t)__s1, 40); \
| ^~~~

2 errors generated.
```

This makes it build: https://github.com/msys2/MINGW-packages/blob/3027f4fc33ee83d31bdcefb2cc07442e02ff8e50/mingw-w64-opencolorio/0006-fix-neon-build.patch

I don't know how that plays with MSVC though, and if this needs to be changed instead: https://github.com/AcademySoftwareFoundation/OpenColorIO/blob/05466120f3f9c23b23778f3ccbafc4dde93abe4b/src/OpenColorIO/SSE2.h#L30-L34

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

src/OpenColorIO/SSE2.h の354行目と357行目から始め、続いて30-34行目付近のプラットフォーム条件分岐を確認します。Clang Arm64 Windows ビルドを再現し、提案された MSYS2 パッチを比較して、MSVC との互換性を確認します。影響を受けるビルドが互換性のないポインターエラーなしで完了すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
build-system, operating-systems
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
48/100

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

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