[Maria-developers] Need help re. which files to include in 5.5 .debs
Hi Serg, As you suggested, I compared .deb file contents with what `make install` produces in 5.5. I discovered that the following files are missing from .debs. I need help understanding which of these should be added to the .debs. (I think anything added should be to package libmariadbclient-dev): /usr/lib/libmysqlservices.a /usr/include/mysql.h /usr/include/mysql_com.h /usr/include/mysqld_ername.h /usr/include/mysqld_error.h /usr/include/mysql_embed.h /usr/include/mysql/psi /usr/include/mysql/psi/mysql_file.h /usr/include/mysql/psi/mysql_thread.h /usr/include/mysql/psi/psi_abi_v1.h /usr/include/mysql/psi/psi_abi_v2.h /usr/include/mysql/psi/psi.h /usr/include/client_plugin.h /usr/include/decimal.h /usr/include/errmsg.h /usr/include/keycache.h /usr/include/m_ctype.h /usr/include/m_string.h /usr/include/my_alloc.h /usr/include/my_attribute.h /usr/include/my_compiler.h /usr/include/my_dbug.h /usr/include/my_getopt.h /usr/include/my_global.h /usr/include/my_list.h /usr/include/my_net.h /usr/include/my_pthread.h /usr/include/mysql_time.h /usr/include/mysql_version.h /usr/include/my_sys.h /usr/include/my_valgrind.h /usr/include/my_xml.h /usr/include/plugin_audit.h /usr/include/plugin_auth.h /usr/include/plugin_ftparser.h /usr/include/plugin.h /usr/include/sql_common.h /usr/include/sql_state.h /usr/include/sslopt-case.h /usr/include/sslopt-longopts.h /usr/include/sslopt-vars.h /usr/include/typelib.h It seems pretty obvious that "mysql.h" is needed. But should I add _all_ the .h files? And what about libmysqlservices.a? - Kristian.
Hi, Kristian! On Jan 25, Kristian Nielsen wrote:
Hi Serg,
As you suggested, I compared .deb file contents with what `make install` produces in 5.5.
I discovered that the following files are missing from .debs. I need help understanding which of these should be added to the .debs. (I think anything added should be to package libmariadbclient-dev):
/usr/lib/libmysqlservices.a
/usr/include/mysql.h ... /usr/include/typelib.h
It seems pretty obvious that "mysql.h" is needed. But should I add _all_ the .h files? And what about libmysqlservices.a?
Are you sure all these headers are missing? I'd suspect they're installed by libmariadbclient-dev, although not in /usr/include, but in /usr/include/mysql. libmysqlservices.a should be installed (in /usr/lib or /usr/lib/mysql, depending on where other libmysql* are installed) by the same deb that installs plugin.h Regards, Sergei
Sergei Golubchik <serg@askmonty.org> writes:
On Jan 25, Kristian Nielsen wrote:
Are you sure all these headers are missing? I'd suspect they're installed by libmariadbclient-dev, although not in /usr/include, but in /usr/include/mysql.
Yes, libmariadbclient-dev has a bunch of headers in /usr/include/mysql/, and yes, that bunch is missing the above. So if I understand you correctly, you are saying that libmariadbclient-dev should install every .h file that `make install` does.
libmysqlservices.a should be installed (in /usr/lib or /usr/lib/mysql, depending on where other libmysql* are installed) by the same deb that installs plugin.h
Ok, that will be libmariadbclient-dev and /usr/lib/. - Kristian.
Kristian Nielsen <knielsen@knielsen-hq.org> writes:
So if I understand you correctly, you are saying that libmariadbclient-dev should install every .h file that `make install` does.
Do we really have to do this? Eg. files like these: /usr/local/mysql/include/decimal.h /usr/local/mysql/include/errmsg.h /usr/local/mysql/include/keycache.h It does not seem right to me to install a generic-named file like "decimal.h" into /usr/include/. If everybody did this, it would be bound to cause conflicts, I think ... Or would it be ok to install _all_ include files in /usr/include/mysql/ ? - Kristian.
Hi, Kristian! On Jan 25, Kristian Nielsen wrote:
Kristian Nielsen <knielsen@knielsen-hq.org> writes:
So if I understand you correctly, you are saying that libmariadbclient-dev should install every .h file that `make install` does.
Do we really have to do this?
Eg. files like these:
/usr/local/mysql/include/decimal.h /usr/local/mysql/include/errmsg.h /usr/local/mysql/include/keycache.h
Weird. How did you do that? :)
It does not seem right to me to install a generic-named file like "decimal.h" into /usr/include/. If everybody did this, it would be bound to cause conflicts, I think ...
Or would it be ok to install _all_ include files in /usr/include/mysql/ ?
Yes. Only psi* files should be in /usr/include/mysql/psi/* In other words, files $top_srcdir/include/*.h go into /usr/include/mysql. Everything $top_srcdir/include/mysql/* also goes into /usr/include/mysql. Regards, Sergei
Sergei Golubchik <serg@askmonty.org> writes:
Hi, Kristian!
On Jan 25, Kristian Nielsen wrote:
Kristian Nielsen <knielsen@knielsen-hq.org> writes:
So if I understand you correctly, you are saying that libmariadbclient-dev should install every .h file that `make install` does.
Do we really have to do this?
Eg. files like these:
/usr/local/mysql/include/decimal.h /usr/local/mysql/include/errmsg.h /usr/local/mysql/include/keycache.h
Weird. How did you do that? :)
Just `cmake . && make && make install DESTDIR=xxx` ... What's wierd about this (just curious, didn't understand)?
Yes. Only psi* files should be in /usr/include/mysql/psi/*
In other words, files $top_srcdir/include/*.h go into /usr/include/mysql. Everything $top_srcdir/include/mysql/* also goes into /usr/include/mysql.
Ok, will do, thanks for the help! - Kristian.
participants (2)
-
Kristian Nielsen
-
Sergei Golubchik