I recently upgraded my main development machine from 42.3 to 15.0 and started having troubles compiling PHP.
With my setup I was able to have a number of local virtual hosts, each with its own PHP version to support a number of PHP-based sites.
After the upgrade I downloaded PHP 7.1.28 and, after some struggle to find the right 64bit libmcrypt to start compiling, I am getting:
/opt/php-7.1.28/ext/mysqli/php_mysqli_structs.h:63:10: fatal error: my_global.h: No such file or directory
and in my searches I could not find a ‘devel’ package for mariadb that would provide the file.
I did search for the missing file in the whole file system to no avail.
As I mentioned, I used to compile at least 3 versions of PHP on this machine when I was running 42.3.
As you saw in the other thread (where I also posted the question), those header files should be in the libmysqlclient-devel package, which is not available for Leap 15.0.
I spent a bit more time on this and noticed that Yast claims that the package libmysqld-devel (I have installed 10.2.22-lp150.2.9.1), has the description:
This package contains the development header files and libraries for developing applications that embed the MariaDB
I’d say it is packaging bug. mariadb package conditionally included headers (and other development files) in libmysqlclient-devel. In https://build.opensuse.org/request/show/539319 condition was removed and baby lost with the water - apparently whoever created this patch did not realize that condition was always true in mariadb package.