Skip to content

Fix missing liburiparser linker option - #20817

Closed
remicollet wants to merge 1 commit into
php:PHP-8.5from
remicollet:issue-liburiparser2
Closed

Fix missing liburiparser linker option#20817
remicollet wants to merge 1 commit into
php:PHP-8.5from
remicollet:issue-liburiparser2

Conversation

@remicollet

@remicolletremicollet commented Jan 1, 2026

Copy link
Copy Markdown
Member

Drop URI_SHARED_LIBADD usage (only needed for a shared extension), use global Autoconf LIBS variable instead

This fix build with external liburiparser (strangely seems only out of sources tree)

/usr/bin/ld: ext/uri/php_uri.o: in function `zm_info_uri':
/builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/php_uri.c:1128:(.text.unlikely+0x1db): undefined reference to `uriBaseRuntimeVersionA'
/usr/bin/ld: ext/uri/uri_parser_rfc3986.o: in function `copy_uri':
/builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/uri_parser_rfc3986.c:82:(.text+0x95): undefined reference to `uriCopyUriMmA'
/usr/bin/ld: ext/uri/uri_parser_rfc3986.o: in function `php_uri_parser_rfc3986_destroy':
/builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/uri_parser_rfc3986.c:612:(.text+0xcd): undefined reference to `uriFreeUriMembersMmA'
/usr/bin/ld: /builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/uri_parser_rfc3986.c:613:(.text+0xe0): undefined reference to `uriFreeUriMembersMmA'
/usr/bin/ld: ext/uri/uri_parser_rfc3986.o: in function `php_uri_parser_rfc3986_fragment_write':
/builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/uri_parser_rfc3986.c:457:(.text+0x124): undefined reference to `uriSetFragmentMmA'
/usr/bin/ld: /builddir/build/BUILD/php-8.5.2_RC1-build/php-8.5.2RC1/ext/uri/uri_parser_rfc3986.c:455:(.text+0x13c): undefined reference to `uriSetFragmentMmA'
/usr/bin/ld: ext/uri/uri_parser_rfc3986.o: in function `php_uri_parser_rfc3986_query_write':
...snipped...

@remicollet

remicollet commented Jan 1, 2026

Copy link
Copy Markdown
MemberAuthor

@DanielEScherzer, if pass review, nice to have in release branch for 8.5.2

Notice: this feature (external liburiparser) is quite new, as version 1.0.0 is required and was very recently released (Dec 15th), so for now, most users don't use it. But this is a best practice (system libraries) for downstream packaging (in Linux distro)

@TimWollaTimWolla left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not really fluent with the autotools. Given that you introduced the line yourself in #18886 I trust you with this change.

@remicollet

Copy link
Copy Markdown
MemberAuthor

Merged in 8.5+ as 9b089ed

@DanielEScherzer

Copy link
Copy Markdown
Member

@DanielEScherzer, if pass review, nice to have in release branch for 8.5.2

Notice: this feature (external liburiparser) is quite new, as version 1.0.0 is required and was very recently released (Dec 15th), so for now, most users don't use it. But this is a best practice (system libraries) for downstream packaging (in Linux distro)

Cherry-picked as 872ff82

@remicollet

Copy link
Copy Markdown
MemberAuthor

Cherry-picked as 872ff82

Thanks

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@remicollet@DanielEScherzer@TimWolla@kocsismate@iluuu1994