Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 935354 - dev-python/tree-sitter build fail on musl, unknown type name 'TSLookaheadIterator'
Summary: dev-python/tree-sitter build fail on musl, unknown type name 'TSLookaheadIter...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: ARM Linux
: Normal normal
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-07-02 15:48 UTC by Marius Dinu
Modified: 2024-07-28 03:02 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge-info.txt,6.88 KB, text/plain)
2024-07-04 13:13 UTC, Marius Dinu
Details
build log (dev-python%3Atree-sitter-0.22.3%3A20240704-130549.log,9.08 KB, application/octet-stream)
2024-07-04 13:13 UTC, Marius Dinu
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marius Dinu 2024-07-02 15:48:20 UTC
When doing an emerge --update... on ARM MUSL (Asus TinkerBoard S), I get this error building dev-python/tree-sitter-0.22.3

2024-07-02 14:59:18,039 root INFO running build_ext
2024-07-02 14:59:18,861 root INFO building 'tree_sitter._binding' extension
2024-07-02 14:59:18,863 root INFO creating /var/tmp/portage/dev-python/tree-sitter-0.22.3/work/py-tree-sitter-0.22.3-python3_12/build/temp.linux-armv7l-cpython-312
2024-07-02 14:59:18,863 root INFO creating /var/tmp/portage/dev-python/tree-sitter-0.22.3/work/py-tree-sitter-0.22.3-python3_12/build/temp.linux-armv7l-cpython-312/tree_sitter
2024-07-02 14:59:18,864 root INFO creating /var/tmp/portage/dev-python/tree-sitter-0.22.3/work/py-tree-sitter-0.22.3-python3_12/build/temp.linux-armv7l-cpython-312/tree_sitter/binding
2024-07-02 14:59:18,866 root INFO armv7a-unknown-linux-musleabihf-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -DNDEBUG -fPIC -DPY_SSIZE_T_CLEAN -DTREE_SITTER_HIDE_SYMBOLS -UTREE_SITTER_FEATURE_WASM -Itree_sitter/binding -I/usr/include/python3.12 -c tree_sitter/binding/language.c -o /var/tmp/portage/dev-python/tree-sitter-0.22.3/work/py-tree-sitter-0.22.3-python3_12/build/temp.linux-armv7l-cpython-312/tree_sitter/binding/language.o -std=c11 -fvisibility=hidden -Wno-cast-function-type -Werror=implicit-function-declaration
In file included from tree_sitter/binding/language.c:1:
tree_sitter/binding/types.h:98:5: error: unknown type name 'TSLookaheadIterator'
   98 |     TSLookaheadIterator *lookahead_iterator;
      |     ^~~~~~~~~~~~~~~~~~~
tree_sitter/binding/language.c: In function 'language_dealloc':
tree_sitter/binding/language.c:28:5: error: implicit declaration of function 'ts_language_delete'; did you mean 'ts_language_version'? [-Werror=implicit-function-declaration]
   28 |     ts_language_delete(self->language);
      |     ^~~~~~~~~~~~~~~~~~
      |     ts_language_version
tree_sitter/binding/language.c: In function 'language_get_parse_state_count':
tree_sitter/binding/language.c:73:36: error: implicit declaration of function 'ts_language_state_count'; did you mean 'ts_language_field_count'? [-Werror=implicit-function-declaration]
   73 |     return PyLong_FromUnsignedLong(ts_language_state_count(self->language));
      |                                    ^~~~~~~~~~~~~~~~~~~~~~~
      |                                    ts_language_field_count
tree_sitter/binding/language.c: In function 'language_next_state':
tree_sitter/binding/language.c:154:5: error: unknown type name 'TSStateId'
  154 |     TSStateId state = ts_language_next_state(self->language, state_id, symbol);
      |     ^~~~~~~~~
tree_sitter/binding/language.c:154:23: error: implicit declaration of function 'ts_language_next_state'; did you mean 'language_next_state'? [-Werror=implicit-function-declaration]
  154 |     TSStateId state = ts_language_next_state(self->language, state_id, symbol);
      |                       ^~~~~~~~~~~~~~~~~~~~~~
      |                       language_next_state
tree_sitter/binding/language.c: In function 'language_lookahead_iterator':
tree_sitter/binding/language.c:163:5: error: unknown type name 'TSLookaheadIterator'; did you mean 'LookaheadIterator'?
  163 |     TSLookaheadIterator *lookahead_iterator = ts_lookahead_iterator_new(self->language, state_id);
      |     ^~~~~~~~~~~~~~~~~~~
      |     LookaheadIterator
tree_sitter/binding/language.c:163:47: error: implicit declaration of function 'ts_lookahead_iterator_new' [-Werror=implicit-function-declaration]
  163 |     TSLookaheadIterator *lookahead_iterator = ts_lookahead_iterator_new(self->language, state_id);
      |                                               ^~~~~~~~~~~~~~~~~~~~~~~~~
tree_sitter/binding/language.c:163:47: warning: initialization of 'int *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
cc1: some warnings being treated as errors
error: command '/usr/bin/armv7a-unknown-linux-musleabihf-gcc' failed with exit code 1

Reproducible: Always
Comment 1 Mike Gilbert gentoo-dev 2024-07-03 14:22:29 UTC
Please attach a full build log and provide emerge --info.
Comment 2 Marius Dinu 2024-07-04 13:13:24 UTC
Created attachment 896971 [details]
emerge --info
Comment 3 Marius Dinu 2024-07-04 13:13:46 UTC
Created attachment 896972 [details]
build log
Comment 4 Marius Dinu 2024-07-04 13:14:11 UTC
Attached emerge --info and build log.
Comment 5 Marius Dinu 2024-07-25 21:24:54 UTC
Last version that works is dev-python/tree-sitter-0.20.1-r1
Comment 6 Ankit Goel 2024-07-28 03:00:41 UTC
Got the same error on a non musl setup. Eventually fixed it by manually updating dev-libs/tree-sitter. I had picked dev-libs/tree-sitter-9999 in the past as a oneshot and it hadn't been rebuilt since. For some reason emerge wasn't rebuilding the 9999 dependency, but doing it manually fixed the error.
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-07-28 03:02:55 UTC
(In reply to Ankit Goel from comment #6)
> Got the same error on a non musl setup. Eventually fixed it by manually
> updating dev-libs/tree-sitter. I had picked dev-libs/tree-sitter-9999 in the
> past as a oneshot and it hadn't been rebuilt since. For some reason emerge
> wasn't rebuilding the 9999 dependency, but doing it manually fixed the error.

Yes, you have to do emerge @live-rebuild for that, or use smart-live-rebuild.