Easysoft ODBC-ODBC Bridge

Why do I get linker errors building Apache/PHP with ODBC-ODBC Bridge

Last Reviewed:
10th January 2024

There are generally 2 reasons for linker failures when building Apache/PHP with Easysoft ODBC-ODBC Bridge.

  1. You have installed a libc5 distribution of ODBC-ODBC Bridge on your glibc based Linux distribution or vice versa.

    A typical result of this when building Apache is:

    Creating Configuration.apaci in src
    ld: warning: libm.so.5, needed by
    /usr/local/easysoft/oob/client/lib/libesoobclient.so, may conflict with libm.so.6 /usr/i486-linux-libc5/lib/libm.so.5: warning: erfcl is not implemented and will always fail /usr/i486-linux-libc5/lib/libm.so.5: warning: erfl is not implemented and will always fail /usr/i486-linux-libc5/lib/libm.so.5: undefined reference to `__getfpucw' make: *** [dummy] Error 1

    This output resulted from building Apache on a glibc based system with the libc5 version of ODBC-ODBC Bridge.

  2. The linker does not know how to find the ODBC-ODBC Bridge client shared object.

    Make sure you followed the Apache_PHP document in the docs directory of the ODBC-ODBC Bridge distribution carefully. Pay particular attention to the:

    1. --with-custom-odbc setting for PHP configuration.
    2. CUSTOM_ODBC_LIBS setting for PHP configuration. The example log in the Apache_PHP file shows one actual command line split over multiple lines in the text file. Make sure you enter this all as one line.
    3. LDFLAGS setting when configuring Apache. If you fail to set LDFLAGS as in the Apache_PHP document you will most likely get an error during configuration such as:
      /usr/bin/ld: cannot open -lesoobclient: No such file or directory
      collect2: ld returned 1 exit status
      make: *** [dummy] Error 1
    4. Check that the path to the libesoobclient.so shared object is in your /etc/ld.so.conf file and that ldconfig has been run to re-read this file.
Applies To

Knowledge Base Feedback

* Did this content help you?
* Please select one option based on your first choice:

(* Required Fields)