Skip to content

lib/mysql.so: undefined symbol: vio_blocking #8

Open
@tadman

Description

@tadman

When compiled on Fedora 14 under Ruby 1.9 (p180 and p290) it will throw an exception that looks like this:

ruby: symbol lookup error: /usr/local/rvm/gems/ruby-1.9.2-p290/gems/mysqlplus-0.1.2/lib/mysql.so: undefined symbol: vio_blocking

What's unusual is that vio_blocking is actually not a function but a macro expressed as a #define in MySQL in violite.h.

The relevant part of mysql.c has this:

#ifdef HAVE_MYSQL_H
#include <mysql.h>
#include <mysql_com.h>
//#include <violite.h>
#include <errmsg.h>
#include <mysqld_error.h>
#else
#include <mysql/mysql.h>
#include <mysql/mysql_com.h>
//#include <mysql/violite.h>
#include <mysql/errmsg.h>
#include <mysql/mysqld_error.h>
#endif

You can see violite.h is specifically commented out and appears to be the source of this problem. It's not clear why this works on OS X but not Linux.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions