Forums | Admin

Discussion Forums: help

Start New Thread Start New Thread
Message: 97712
BY: Paul Wade (paulwade)
DATE: 2012-04-05 02:21
SUBJECT: RE: Segmentation Fault loading ibm_db

 

Ok, here's the results of running the "gem install ibm_db" command in Ubuntu 11.10 64-bit:


root@ubuntu:~# gem install ibm_db
Building native extensions. This could take a while...
ERROR: Error installing ibm_db:
ERROR: Failed to build gem native extension.

/home/paul/.rvm/rubies/ruby-1.9.3-p125/bin/ruby extconf.rb
creating gil_release_version
creating unicode_support_version
checking for SQLConnect() in -ldb2... no
checking for SQLConnect() in -ldb2... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.

Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/home/paul/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
--with-IBM_DB-dir
--without-IBM_DB-dir
--with-IBM_DB-include
--without-IBM_DB-include=${IBM_DB-dir}/include
--with-IBM_DB-lib
--without-IBM_DB-lib=${IBM_DB-dir}/lib
--with-db2lib
--without-db2lib
--with-db2lib
--without-db2lib
extconf failure: Unable to locate DB2 libraries.

Follow the steps below and retry

Step 1: - Install IBM DB2 Universal Database Server/Client

step 2: - Set the environment variables IBM_DB_INCLUDE and IBM_DB_LIB as below

(assuming bash shell)

export IBM_DB_INCLUDE=DB2HOME/include (eg. /home/db2inst1/sqllib/include or /opt/ibm/db2/v9.5/include)
export IBM_DB_LIB=DB2HOME/lib (eg. /home/db2inst1/sqllib/lib or /opt/ibm/db2/V9.5/lib32)

step 3: - Retry gem install




Gem files will remain installed in /home/paul/.rvm/gems/ruby-1.9.3-p125/gems/ibm_db-2.5.9 for inspection.
Results logged to /home/paul/.rvm/gems/ruby-1.9.3-p125/gems/ibm_db-2.5.9/ext/gem_make.out

And this is the contents of mkmf.log. I'm sorry for the data dump but I really don't know which parts of the file are important and which aren't. I'm new at this.


have_library: checking for SQLConnect() in -ldb2... -------------------- no

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -lpthread -lrt -ldl -lcrypt -lm -lc"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main() {return 0;}
/* end */

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:53: error: ‘SQLConnect’ undeclared (first use in this function)
conftest.c:5:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { void ((*volatile p)()); p = (void ((*)()))SQLConnect; return 0; }
/* end */

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:1: warning: implicit declaration of function ‘SQLConnect’ [-Wimplicit-function-declaration]
/usr/bin/ld: skipping incompatible /home/paul/clidriver/lib/libdb2.so when searching for -ldb2
/usr/bin/ld: cannot find -ldb2
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { SQLConnect(); return 0; }
/* end */

--------------------

find_library: checking for SQLConnect() in -ldb2... -------------------- no

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:53: error: ‘SQLConnect’ undeclared (first use in this function)
conftest.c:5:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { void ((*volatile p)()); p = (void ((*)()))SQLConnect; return 0; }
/* end */

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:1: warning: implicit declaration of function ‘SQLConnect’ [-Wimplicit-function-declaration]
/usr/bin/ld: skipping incompatible /home/paul/clidriver/lib/libdb2.so when searching for -ldb2
/usr/bin/ld: cannot find -ldb2
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { SQLConnect(); return 0; }
/* end */

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:53: error: ‘SQLConnect’ undeclared (first use in this function)
conftest.c:5:53: note: each undeclared identifier is reported only once for each function it appears in
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { void ((*volatile p)()); p = (void ((*)()))SQLConnect; return 0; }
/* end */

"gcc -o conftest -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/x86_64-linux -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I/home/paul/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1 -I. -I/home/paul/clidriver/include -I/home/paul/.rvm/usr/include -O3 -g -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -Wl,-R/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/clidriver/lib -Wl,-R/home/paul/clidriver/lib -L/home/paul/.rvm/usr/lib -Wl,-R/home/paul/.rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -L/home/paul/.rvm/rubies/ruby-1.9.3-p125/lib -lruby -ldb2 -lpthread -lrt -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:5:1: warning: implicit declaration of function ‘SQLConnect’ [-Wimplicit-function-declaration]
/usr/bin/ld: skipping incompatible /home/paul/clidriver/lib/libdb2.so when searching for -ldb2
/usr/bin/ld: cannot find -ldb2
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: int main() {return 0;}
5: int t() { SQLConnect(); return 0; }
/* end */

--------------------

I'm probably doing something stupid. Thanks so much for your help.


Thread View

Thread Author Date
Segmentation Fault loading ibm_dbPaul Wade2012-04-03 21:25
      RE: Segmentation Fault loading ibm_dbPraveen Devarao2012-04-04 04:31
            RE: Segmentation Fault loading ibm_dbPaul Wade2012-04-04 08:27
                  RE: Segmentation Fault loading ibm_dbPraveen Devarao2012-04-04 11:30
                        RE: Segmentation Fault loading ibm_dbPraveen Devarao2012-04-04 11:33
                              RE: Segmentation Fault loading ibm_dbPaul Wade2012-04-04 17:10
                              RE: Segmentation Fault loading ibm_dbPaul Wade2012-04-05 02:21
                                    RE: Segmentation Fault loading ibm_dbPraveen Devarao2012-04-05 06:14
                                          RE: Segmentation Fault loading ibm_dbPaul Wade2012-04-06 03:13
                                                RE: Segmentation Fault loading ibm_dbPraveen Devarao2012-04-16 16:24

Post a followup to this message