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

@remicollet remicollet 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
Member Author

@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)

@TimWolla TimWolla 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
Member Author

Merged in 8.5+ as 9b089ed

@remicollet remicollet closed this Jan 5, 2026
@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
Member Author

Cherry-picked as 872ff82

Thanks

Sign up for free to 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