Header Files. In order to compile source files that use the NDB API, you must ensure that the necessary header files can be found. Header files specific to the NDB and MGM APIs are installed in the following subdirectories of the MySQLinclude directory, respectively:
include/mysql/storage/ndb/ndbapiinclude/mysql/storage/ndb/mgmapi
Compiler Flags. The MySQL-specific compiler flags needed can be determined using themysql_config utility that is part of the MySQL installation:
$> mysql_config --cflags-I/usr/local/mysql/include/mysql -Wreturn-type -Wtrigraphs -W -Wformat-Wsign-compare -Wunused -mcpu=pentium4 -march=pentium4 This sets the include path for the MySQL header files but not for those specific to the NDB API. The--include option tomysql_config returns the generic include path switch:
$> mysql_config --include-I/usr/local/mysql/include/mysql It is necessary to add the subdirectory paths explicitly, so that adding all the needed compile flags to theCXXFLAGS shell variable should look something like this:
CFLAGS="$CFLAGS "`mysql_config --cflags`CFLAGS="$CFLAGS "`mysql_config --include`/storage/ndbCFLAGS="$CFLAGS "`mysql_config --include`/storage/ndb/ndbapiCFLAGS="$CFLAGS "`mysql_config --include`/storage/ndb/mgmapi If you do not intend to use the NDB Cluster management functions, the last line in the previous example can be omitted. However, if you are interested in the management functions only, and do not want or need to access NDB Cluster data except from MySQL, then you can omit the line referencing thendbapi directory.