#156 Build fails on Fedora.

GNADE 1.X
closed
5
2007-10-07
2007-09-17
Björn Persson
No

To build GNADE 1.5.3b on Fedora 7 I had to edit make.conf to include "-lodbc". This line seemed suspicious:

DMLINKEROPT= -L/usr/lib -lmyodbc3

"-L/usr/lib" is unnecessary, and myodbc3 can't possibly be the driver manager. The build seemed to work after I changed the line to:

DMLINKEROPT= -lodbc

Discussion

1 2 > >> (Page 1 of 2)
  • Logged In: YES
    user_id=146097
    Originator: NO

    What driver manager are you using?

     
  • Björn Persson
    Björn Persson
    2007-09-17

    Logged In: YES
    user_id=1037163
    Originator: YES

    UnixODBC 2.2.12 I think. I'm new to ODBC and I'm not sure which library file contains which component, but /usr/lib/libodbc.so belongs to the package unixODBC-2.2.12-2.fc7.

     
  • Logged In: YES
    user_id=146097
    Originator: NO

    First you are right -lmyodbc3 is simply wrong. Pls. could you prvide me the output
    of ./configure --all.

    BTW: on my box is looks like this: -lodbc

     
  • Björn Persson
    Björn Persson
    2007-09-19

    ./configure --all

     
    Attachments
  • Björn Persson
    Björn Persson
    2007-09-19

    Logged In: YES
    user_id=1037163
    Originator: YES

    ./configure --all didn't run to completion so I'm attaching the output of a plain ./configure too.

    It is strange that it says it can't find any ODBC drivers for MySQL when it has already found libmyodbc3 and looked for SQLAllocHandle in it.
    File Added: configure-all-output

     
  • Björn Persson
    Björn Persson
    2007-09-19

    Logged In: YES
    user_id=1037163
    Originator: YES

    File Added: configure-output

     
  • Björn Persson
    Björn Persson
    2007-09-19

    ./configure

     
    Attachments
  • Logged In: YES
    user_id=146097
    Originator: NO

    Is it possible that on your box there is also an mysql insatlled. The libary
    in question belong to the myodbc drvier manager for mysql?

    This would explain why the myodbc3 is included. But i will change it any way
    because o think the application should be linked agains the UnixODBC products
    library.

     
  • Björn Persson
    Björn Persson
    2007-09-20

    Logged In: YES
    user_id=1037163
    Originator: YES

    Yes, MySQL is installed. Server, command-line tools, client library, and something called MySQL Connector/ODBC or MyODBC which I thought was the ODBC driver for MySQL. MySQL Connector/ODBC consists of the libraries myodbc3 and myodbc3_r.

    Do you mean MyODBC is a driver manager that can replace the one in UnixODBC? I thought it was a driver that the driver manager should manage. I got loads of linking errors when "-odbc" was missing, so apparently libmyodbc3 can't replace libodbc.

    By the way, my program is multithreaded. I assume that "_r" is for "reentrant" and that I have to use that version, so I've configured a data source with myodbc3_r in UnixODBC. It would not be good if the non-reentrant version were to be linked in and somehow bypass the ODBC configuration.

     
  • Logged In: YES
    user_id=146097
    Originator: NO

    Yes this should be possible. Any way i have added a configuration switsch --dm=<name> which allows to select a driver manager directly.

     
1 2 > >> (Page 1 of 2)