ドキュメント ホーム サイトマップ マニュアルページ GNU 情報 検索 印刷形式
 

(mysql.info) link-errors

情報カタログ (mysql.info) installation-issues (mysql.info) installation-issues (mysql.info) file-permissions
 
 A.3.1 Problems Linking to the MySQL Client Library
 --------------------------------------------------
 
 When you are linking an application program to use the MySQL client
 library, you might get undefined reference errors for symbols that
 start with `mysql_', such as those shown here:
 
      /tmp/ccFKsdPa.o: In function `main':
      /tmp/ccFKsdPa.o(.text+0xb): undefined reference to `mysql_init'
      /tmp/ccFKsdPa.o(.text+0x31): undefined reference to `mysql_real_connect'
      /tmp/ccFKsdPa.o(.text+0x57): undefined reference to `mysql_real_connect'
      /tmp/ccFKsdPa.o(.text+0x69): undefined reference to `mysql_error'
      /tmp/ccFKsdPa.o(.text+0x9a): undefined reference to `mysql_close'
 
 You should be able to solve this problem by adding `-Ldir_path
 -lmysqlclient' at the end of your link command, where `dir_path'
 represents the pathname of the directory where the client library is
 located.  To determine the correct directory, try this command:
 
      shell> mysql_config --libs
 
 The output from `mysql_config' might indicate other libraries that
 should be specified on the link command as well.
 
 If you get `undefined reference' errors for the `uncompress' or
 `compress' function, add `-lz' to the end of your link command and try
 again.
 
 If you get `undefined reference' errors for a function that should
 exist on your system, such as `connect', check the manual page for the
 function in question to determine which libraries you should add to the
 link command.
 
 You might get `undefined reference' errors such as the following for
 functions that don't exist on your system:
 
      mf_format.o(.text+0x201): undefined reference to `__lxstat'
 
 This usually means that your MySQL client library was compiled on a
 system that is not 100% compatible with yours. In this case, you should
 download the latest MySQL source distribution and compile MySQL
 yourself. See  installing-source.
 
 You might get undefined reference errors at runtime when you try to
 execute a MySQL program. If these errors specify symbols that start
 with `mysql_' or indicate that the `mysqlclient' library can't be
 found, it means that your system can't find the shared
 `libmysqlclient.so' library. The fix for this is to tell your system to
 search for shared libraries where the library is located. Use whichever
 of the following methods is appropriate for your system:
 
    * Add the path to the directory where `libmysqlclient.so' is located
      to the `LD_LIBRARY_PATH' environment variable.
 
    * Add the path to the directory where `libmysqlclient.so' is located
      to the `LD_LIBRARY' environment variable.
 
    * Copy `libmysqlclient.so' to some directory that is searched by
      your system, such as `/lib', and update the shared library
      information by executing `ldconfig'.
 
 Another way to solve this problem is by linking your program statically
 with the `-static' option, or by removing the dynamic MySQL libraries
 before linking your code.  Before trying the second method, you should
 be sure that no other programs are using the dynamic libraries.
 
情報カタログ (mysql.info) installation-issues (mysql.info) installation-issues (mysql.info) file-permissions
より自動的に生成されましたinfo2html