[MDEV-4147] Cannot build with include files from binary tarballs (fatal error: mysql/plugin.h: No such file or directory) Created: 2013-02-07 Updated: 2013-04-07 Resolved: 2013-04-07 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | None |
| Affects Version/s: | 10.0.1, 5.5.29, 5.2.14, 5.3.12 |
| Fix Version/s: | 10.0.2, 5.5.31, 5.2.15, 5.3.13 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Elena Stepanova | Assignee: | Sergei Golubchik |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | packaging | ||
| Issue Links: |
|
||||
| Description |
|
An attempt to build e.g MySQL ODBC connector with include files from MariaDB binary tarball ends with a failure:
Indeed, the file structure in the tarball is such that m_string.h and plugin.h are on the same level in include/mysql, while m_string.h wants mysql/plugin.h. cmake command and log:
The workaround is creating include/mysql/mysql link pointing at include/mysql. |
| Comments |
| Comment by Sergei Golubchik [ 2013-02-07 ] |
|
MariaDB/MySQL clients are supposed to use mysql_config script to get the include paths. Did you try that? |
| Comment by Elena Stepanova [ 2013-02-07 ] |
|
On 5.2/5.3, bin/mysql_config --include returns On 5.5/10.0, it returns But in any case you are right, if one uses C_FLAGS instead of special cmake variables like the connector's MYSQL_INCLUDE_DIR, one can provide more than one include directory and the problem is solved much better than by creating a link. Maybe it's even possible with MYSQL_INCLUDE_DIR, I just haven't found how. For a note, I don't think that these tweaks need necessarily be treated in the code, I'm creating the reports mainly to be aware of possible problems users might encounter while building, and either point them at the JIRA entries or maybe document some of them as questions/answers or building advice. |
| Comment by Sergei Golubchik [ 2013-04-07 ] |
|
One is supposed to use mysql_config tool to get the correct values for C include paths, etc. |