|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2017-10-25 15:36 UTC] colin at viebrock dot ca
Description: ------------ I'm trying to write a C extension for PHP that would benefit from using the php_unicode_convert_case() function defined in ext/mbstring/php_unicode.h. However, this header file does not seem to be exported or made available in the Homebrew installation of PHP (see https://github.com/Homebrew/homebrew-php/issues/4537), nor does it seem to be available in any Ubuntu packages (apart from hhvm-dev). Is there a way to either change the header files installed by this package to include php_unicode.h, or is there some other way I can get multi-byte case conversion functions available to my C extension? Test script: --------------- #include "ext/mbstring/php_unicode.h" Expected result: ---------------- Running "make" on my extension should build the .so file. Actual result: -------------- fatal error: 'ext/mbstring/php_unicode.h' file not found #include "ext/mbstring/php_unicode.h" ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Tue Nov 04 21:00:01 2025 UTC |
From that issue --------------- They are not listed in the configure files ➜ mbstring git:(master) ✗ grep PHP_INSTALL_HEADERS * config.m4: PHP_INSTALL_HEADERS([ext/mbstring], [$PHP_MBSTRING_INSTALL_HEADERS]) config.w32: PHP_INSTALL_HEADERS("ext/mbstring", "mbstring.h oniguruma/oniguruma.h php_mbregex.h php_onig_compat.h"); config.w32: PHP_INSTALL_HEADERS("ext/mbstring", "mbstring.h oniguruma/oniguruma.h php_mbregex.h php_onig_compat.h libmbfl/config.h libmbfl/mbfl/eaw_table.h libmbfl/mbfl/mbfilter.h libmbfl/mbfl/mbfilter_8bit.h libmbfl/mbfl/mbfilter_pass.h libmbfl/mbfl/mbfilter_wchar.h libmbfl/mbfl/mbfl_allocators.h libmbfl/mbfl/mbfl_consts.h libmbfl/mbfl/mbfl_convert.h libmbfl/mbfl/mbfl_defs.h libmbfl/mbfl/mbfl_encoding.h libmbfl/mbfl/mbfl_filter_output.h libmbfl/mbfl/mbfl_ident.h libmbfl/mbfl/mbfl_language.h libmbfl/mbfl/mbfl_memory_device.h libmbfl/mbfl/mbfl_string.h"); config.w32: PHP_INSTALL_HEADERS("ext/mbstring", "php_mbregex.h"); so if they are required it seems to be an upstream issue. -------------- So maybe it just needs to be listed.