#70604 closed defect (fixed)
svt-av1 @2.2.0+debug: error: use of undeclared identifier 'x_step_q4', 'y_step_q4'
Reported by: | lukaso (Lukas Oberhuber) | Owned by: | i0ntempest |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.9.3 |
Keywords: | arm64 | Cc: | |
Port: | svt-av1 |
Description
Build fails on Sonoma with:
arm64_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_multimedia_svt-av1/svt-av1/work/SVT-AV1-2.2.0/Source/Lib/ASM_NEON/wiener_convolve_neon.c:272:12: error: use of undeclared identifier 'x_step_q4' :info:build assert(x_step_q4 == 16 && y_step_q4 == 16); :info:build ^ :info:build /Users/lukasoberhuber/macports-gimp3-arm64/var/macports/build/_Users_lukasoberhuber_macports-gimp3-arm64_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_multimedia_svt-av1/svt-av1/work/SVT-AV1-2.2.0/Source/Lib/ASM_NEON/wiener_convolve_neon.c:272:31: error: use of undeclared identifier 'y_step_q4' :info:build assert(x_step_q4 == 16 && y_step_q4 == 16); :info:build ^ :info:build 2 errors generated.
Attachments (1)
Change History (5)
Changed 3 months ago by lukaso (Lukas Oberhuber)
Attachment: | svt-av1.log added |
---|
comment:1 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)
Keywords: | arm64 added |
---|---|
Owner: | set to i0ntempest |
Status: | new → assigned |
Summary: | svt-av1: 2.2.0 does not build on Sonoma → svt-av1 @2.2.0+debug: error: use of undeclared identifier 'x_step_q4', 'y_step_q4' |
Version: | → 2.9.3 |
The problem is specific to arm/neon code.
The build succeeded on our arm64 buildbot machines; something must be different about your build. It appears to be that you are using the debug variant and we are not: the buildbot builds used -DNDEBUG
while your build did not. Defining NDEBUG
turns off assertions.
I also notice in the log is that you are using the macOS 11 SDK but I don't think that's relevant.
The code on line 272 of the file wiener_convolve_neon.c reads:
assert(x_step_q4 == 16 && y_step_q4 == 16);
I do not see anywhere that x_step_q4
or y_step_q4
are defined in this file. They are defined in other files. Maybe this was copied from another file without ever testing with assertions enabled.
The workaround would be to remove that line, or don't use the debug variant.
I filed a bug report: https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/2202
comment:2 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)
Upstream has merged a change that just removes that assert: https://gitlab.com/AOMediaCodec/SVT-AV1/-/merge_requests/2271
If you can confirm that that fixes the build with the debug variant you could let them know over there.
comment:3 Changed 3 months ago by i0ntempest
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:4 Changed 3 months ago by lukaso (Lukas Oberhuber)
Thanks for fixing this! Can confirm fix has worked.
failing build