Error: uninitialized constant MysqlCompat::MysqlRes


#1

Hi,
I installed the “kwatch-mysql-ruby” gem on my Debian server but when I
try to run the “db:migrate” task I get the following error:

** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
rake aborted!
uninitialized constant MysqlCompat::MysqlRes
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:440:in
rescue in load_missing_constant' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:436:inload_missing_constant’
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:80:in
const_missing_with_dependencies' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/mysql_adapter.rb:9:indefine_all_hashes_method!’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/mysql_adapter.rb:71:in
mysql_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:223:innew_connection’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:245:in
checkout_new_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:188:inblock (2 levels) in checkout’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in
loop' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:inblock in checkout’
/usr/local/lib/ruby/1.9.1/monitor.rb:190:in mon_synchronize' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:183:incheckout’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:98:in
connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:326:inretrieve_connection’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:123:in
retrieve_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:inconnection’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/migration.rb:435:in
initialize' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/migration.rb:400:innew’
/usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/migration.rb:400:in
up' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.3/lib/active_record/migration.rb:383:inmigrate’
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.3/lib/tasks/databases.rake:116:in
block (2 levels) in <top (required)>' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:636:incall’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:636:in block in execute' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:631:ineach’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:631:in
execute' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:597:inblock
in invoke_with_call_chain’
/usr/local/lib/ruby/1.9.1/monitor.rb:190:in mon_synchronize' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:590:ininvoke_with_call_chain’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:583:in
invoke' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2051:ininvoke_task’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2029:in
block (2 levels) in top_level' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2029:ineach’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2029:in
block in top_level' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2068:instandard_exception_handling’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2023:in
top_level' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2001:inblock in run’
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2068:in
standard_exception_handling' /usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:1998:inrun’
/usr/local/bin/rake:31:in `’


#2

Hi there,

I just started using aptana and am working on my HelloWorld, but I’m
gettin the same error “uninitialized constant MysqlCompat::MysqlRes”.
Did you ever figure out what is it about?

Thanks!

On Jul 31, 12:00 pm, “Martin J.” removed_email_address@domain.invalid


#3

Martin J. wrote:

Hi,
I installed the “kwatch-mysql-ruby” gem on my Debian server but when I
try to run the “db:migrate” task I get the following error:

** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
rake aborted!
uninitialized constant MysqlCompat::MysqlRes

I saw this, having freshly installed Rails 2.3.3, and then being told to
run ‘gem install mysql’ because the MySQL client is no longer bundled
with Rails, as of 2.2

Okay, I did that. Then I got the error message you showed in your post
– about MysqlCompat::MysqlRes not being defined.

Turns out there is no such thing; this error is caused by a malfunction
of the mysql-2.8.1 gem.

If you install the gem by hand, chances are when you run the test you’ll
find that the gem’s bundle doesn’t actually manage to load the
mysqlclient library. (On my MacOS X 10.5.8 system, it’s a .dylib; under
Linux it may be a .so)

The error message I saw during the test phase looked like this:

./mysql.bundle: dlopen(./mysql.bundle, 9): Library not loaded:
/usr/local/mysql/lib/mysql/libmysqlclient.15.dylib (LoadError)
Referenced from:
/Users/ccullen/Projects/npapp-v2/mysql-ruby-2.8.1/mysql.bundle
Reason: image not found - ./mysql.bundle
from test.rb:5

From that message you can see it’s looking for the mysqlclient library
in a directory one level too deep, vis-a-vis the location my libraries
occupy:
/usr/local/mysql/lib is right; /usr/local/mysql/lib/mysql is not.

It is however pretty simple to create a ‘mysql’ symlink inside
/usr/local/mysql/lib and point it at ‘.’, allowing the broken
mysql.bundle to locate its libraries.

This is definitely a hack. I just wanted to help, since I haven’t seen
any answers posted, and certainly nothing to explain why this error is
occurring.

Best of luck!


#4

This didn’t seem to fix the error for me. I still get ‘uninitialized
constant MysqlCompat::MysqlRes’

Kyle F. wrote:

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07�pm, Caleb C. removed_email_address@domain.invalid

cheers,


#5

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07 pm, Caleb C. removed_email_address@domain.invalid


#6

I also built the gem with the archflags, but am still getting this
error. Did anyone find a different reason that might be causing this?

On Sep 19, 11:15 pm, Evan G. removed_email_address@domain.invalid


#7

Evan G. wrote:

This didn’t seem to fix the error for me. I still get ‘uninitialized
constant MysqlCompat::MysqlRes’

Kyle F. wrote:

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07�pm, Caleb C. removed_email_address@domain.invalid

cheers,

on my Centos Machine, i had to install mysql-devel.x86_64 first, then i
ran the command:

env ARCHFLAGS="-arch x86_64" gem install mysql –
–with-mysql-config=/usr/lib64/mysql/mysql_config

which did the trick.

thanks Kyle


#8

Anybody still has the issue?

I have been using jruby for a while but today I was trying to setup
using the last version of ruby 1.9 and rails 2.3.4 and I got hit with
that.

Also running centos and tried the ARCHFLAGS trick with no success.

Pishty Ags wrote:

Evan G. wrote:

This didn’t seem to fix the error for me. I still get ‘uninitialized
constant MysqlCompat::MysqlRes’

Kyle F. wrote:

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07�pm, Caleb C. removed_email_address@domain.invalid

cheers,

on my Centos Machine, i had to install mysql-devel.x86_64 first, then i
ran the command:

env ARCHFLAGS="-arch x86_64" gem install mysql –
–with-mysql-config=/usr/lib64/mysql/mysql_config

which did the trick.

thanks Kyle


#9

Actually, doing more research and an strace on the process I found the
problem.

Looking in the wrong place for the location of the library, I added my
mysql lib directory to ld.so.conf/mysql.conf config file and it fixed
it.

Jean Bombeur wrote:

Anybody still has the issue?

I have been using jruby for a while but today I was trying to setup
using the last version of ruby 1.9 and rails 2.3.4 and I got hit with
that.

Also running centos and tried the ARCHFLAGS trick with no success.

Pishty Ags wrote:

Evan G. wrote:

This didn’t seem to fix the error for me. I still get ‘uninitialized
constant MysqlCompat::MysqlRes’

Kyle F. wrote:

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07�pm, Caleb C. removed_email_address@domain.invalid

cheers,

on my Centos Machine, i had to install mysql-devel.x86_64 first, then i
ran the command:

env ARCHFLAGS="-arch x86_64" gem install mysql –
–with-mysql-config=/usr/lib64/mysql/mysql_config

which did the trick.

thanks Kyle


#10

I was having the same problem on Snow Leopard and, after some time I
did the following:

Removed all mysql gems I had:

gem uninstall mysql

In my case I had to specify both mysql-dir and mysql-config (and -arch
x86_64 to 64 bits)

export ARCHFLAGS="-arch i386 -arch x86_64" ; gem install --no-rdoc –
no-ri mysql – --with-mysql-dir=/usr/local --with-mysql-config=/usr/
local/mysql/bin/mysql_config

Hope it works


#11

Raphael Petegrosso wrote:

I was having the same problem on Snow Leopard and, after some time I
did the following:

Removed all mysql gems I had:

gem uninstall mysql

In my case I had to specify both mysql-dir and mysql-config (and -arch
x86_64 to 64 bits)

export ARCHFLAGS="-arch i386 -arch x86_64" ; gem install --no-rdoc –
no-ri mysql – --with-mysql-dir=/usr/local --with-mysql-config=/usr/
local/mysql/bin/mysql_config

Hope it works

I was able to resolve this issue. Thanks for your valuable suggestions.
Along with the above steps, I had to configure the LD_LIBRARY_PATH.


#12

These instructions also worked for me after upgrading to Snow Leopard.
In my case mysql was in /opt/local/lib/mysql5, so the following fixed it
for me:

sudo gem uninstall mysql

export ARCHFLAGS="-arch i386 -arch x86_64" ; gem install --no-rdoc
–no-ri mysql – --with-mysql-dir=/opt/local/lib/mysql5
–with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config

I was having the same problem on Snow Leopard and, after some time I
did the following:

Removed all mysql gems I had:

gem uninstall mysql

In my case I had to specify both mysql-dir and mysql-config (and -arch
x86_64 to 64 bits)

export ARCHFLAGS="-arch i386 -arch x86_64" ; gem install --no-rdoc –
no-ri mysql – --with-mysql-dir=/usr/local --with-mysql-config=/usr/
local/mysql/bin/mysql_config

Hope it works


#13

Andrew McDonough wrote:

These instructions also worked for me after upgrading to Snow Leopard.
In my case mysql was in /opt/local/lib/mysql5, so the following fixed it
for me:

sudo gem uninstall mysql

export ARCHFLAGS="-arch i386 -arch x86_64" ; gem install --no-rdoc
–no-ri mysql – --with-mysql-dir=/opt/local/lib/mysql5
–with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config

I was able to get the mysql gem to compile by doing something like that;
but then I found that, for whatever reason, /tmp/mysql.sock did not
exist (and so my rake tasks failed, etc). I followed instructions on
the Rails blog to install MySQL from a DMG, and then /tmp/mysql.sock
existed as expected.

HTH.


#14

had the same, switching to 2.7 helps
sudo gem install mysql -v 2.7

On 22 Okt., 17:33, Caleb C. removed_email_address@domain.invalid


#15

Hi

************* URGENT PLEASEEEEEEEEEEEEEEEEEEEEEEEEEE ***********
I still see the problem after following the above steps.
Please please help me.

~Sam.

==============================================================================
ruby script/server
=> Booting Mongrel
=> Rails 2.3.4 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
/!\ FAILSAFE /!\ Mon Oct 12 17:15:15 -0700 2009
Status: 500 Internal Server Error
uninitialized constant MysqlCompat::MysqlRes
/usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.4/lib/active_support/dep
endencies.rb:440:in load_missing_constant' /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.4/lib/active_support/dep endencies.rb:80:inconst_missing’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/mysql_adapter.rb:9:in define_all_hashes_method!' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/mysql_adapter.rb:66:inmysql_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_pool.rb:223:in send' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_pool.rb:223:innew_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_pool.rb:245:in
checkout_new_connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_pool.rb:188:incheckout’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_pool.rb:184:in loop' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_pool.rb:184:incheckout’
/usr/local/lib/ruby/1.8/monitor.rb:242:in synchronize' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_pool.rb:183:incheckout’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_pool.rb:98:in connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_pool.rb:326:inretrieve_connection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_specification.rb:123:in
retrieve_connection' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne ction_adapters/abstract/connection_specification.rb:115:inconnection’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/query
_cache.rb:9:in cache' /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/query _cache.rb:28:incall’
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.3.4/lib/active_record/conne
ction_adapters/abstract/connection_pool.rb:361:in call' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_controller/fai lsafe.rb:26:incall’
/usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in
call' /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:insynchro nize’
/usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in
call' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_controller/dis patcher.rb:114:incall’
/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_controller/rel
oader.rb:34:in run' /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_controller/dis patcher.rb:108:incall’
/usr/local/lib/ruby/gems/1.8/gems/rails-2.3.4/lib/rails/rack/static.rb:31:in
call' /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:46:incall’
/usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:in
each' /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:incall’
/usr/local/lib/ruby/gems/1.8/gems/rails-2.3.4/lib/rails/rack/log_tailer.rb:1
7:in call' /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/content_length.rb:13:i ncall’
/usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/chunked.rb:15:in
call ' /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:61: inprocess’
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:159:in
proce ss_client' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:ineach’
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:158:in
proce ss_client' /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285:inrun’
/usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:285

Jean Bombeur wrote:

Actually, doing more research and an strace on the process I found the
problem.

Looking in the wrong place for the location of the library, I added my
mysql lib directory to ld.so.conf/mysql.conf config file and it fixed
it.

Jean Bombeur wrote:

Anybody still has the issue?

I have been using jruby for a while but today I was trying to setup
using the last version of ruby 1.9 and rails 2.3.4 and I got hit with
that.

Also running centos and tried the ARCHFLAGS trick with no success.

Pishty Ags wrote:

Evan G. wrote:

This didn’t seem to fix the error for me. I still get ‘uninitialized
constant MysqlCompat::MysqlRes’

Kyle F. wrote:

To fix this, specify ARCHFLAGS when you install the ‘mysql’ gem:

sudo env ARCHFLAGS="-arch x86_64" gem install mysql – --with-mysql-
config=/usr/local/mysql/bin/mysql_config

On Aug 27, 12:07�pm, Caleb C. removed_email_address@domain.invalid

cheers,

on my Centos Machine, i had to install mysql-devel.x86_64 first, then i
ran the command:

env ARCHFLAGS="-arch x86_64" gem install mysql –
–with-mysql-config=/usr/lib64/mysql/mysql_config

which did the trick.

thanks Kyle


#16

grosser.michael wrote:

had the same, switching to 2.7 helps
sudo gem install mysql -v 2.7

On 22 Okt., 17:33, Caleb C. removed_email_address@domain.invalid
I was able to install the mysql v. 2.7 gem on a macport mysql version
with:

sudo gem install -v 2.7 --no-rdoc --no-ri mysql –
–with-mysql-dir=/opt/local/lib/mysql5
–with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config;


#17

Steven Hampton wrote:

If you are still getting this issue, I have posted an EXPLANATION as
well as how to derive the correct solution for your system here
http://techliberty.blogspot.com/ the EXPLANATION was to long for a forum
post :slight_smile:

Thanks a lot Steven. I am not seeing this issue now, but will definitely
go through your explanation…!!!


#18

If you are still getting this issue, I have posted an EXPLANATION as
well as how to derive the correct solution for your system here
http://techliberty.blogspot.com/ the EXPLANATION was to long for a forum
post :slight_smile:


#19

This article got it done for me:

http://stackoverflow.com/questions/991708/rails-mysql-and-snow-leopard


#20

Caleb

Could I ask what test you were running during the “test phase” you
mention below?

I’m really stumped by my problems with this bug, and am trying to
determine if my error has the same cause.

thanks,
Rick

Caleb C. wrote:

Martin J. wrote:

Hi,
I installed the “kwatch-mysql-ruby” gem on my Debian server but when I
try to run the “db:migrate” task I get the following error:

** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
rake aborted!
uninitialized constant MysqlCompat::MysqlRes

I saw this, having freshly installed Rails 2.3.3, and then being told to
run ‘gem install mysql’ because the MySQL client is no longer bundled
with Rails, as of 2.2

Okay, I did that. Then I got the error message you showed in your post
– about MysqlCompat::MysqlRes not being defined.

Turns out there is no such thing; this error is caused by a malfunction
of the mysql-2.8.1 gem.

If you install the gem by hand, chances are when you run the test you’ll
find that the gem’s bundle doesn’t actually manage to load the
mysqlclient library. (On my MacOS X 10.5.8 system, it’s a .dylib; under
Linux it may be a .so)

The error message I saw during the test phase looked like this:

./mysql.bundle: dlopen(./mysql.bundle, 9): Library not loaded:
/usr/local/mysql/lib/mysql/libmysqlclient.15.dylib (LoadError)
Referenced from:
/Users/ccullen/Projects/npapp-v2/mysql-ruby-2.8.1/mysql.bundle
Reason: image not found - ./mysql.bundle
from test.rb:5

From that message you can see it’s looking for the mysqlclient library
in a directory one level too deep, vis-a-vis the location my libraries
occupy:
/usr/local/mysql/lib is right; /usr/local/mysql/lib/mysql is not.

It is however pretty simple to create a ‘mysql’ symlink inside
/usr/local/mysql/lib and point it at ‘.’, allowing the broken
mysql.bundle to locate its libraries.

This is definitely a hack. I just wanted to help, since I haven’t seen
any answers posted, and certainly nothing to explain why this error is
occurring.

Best of luck!