View Issue Details

IDProjectCategoryView StatusLast Update
0003199Kali Linux[All Projects] Kali Package Bugpublic2016-04-01 07:52
ReporterUNATCO Assigned Torhertzog  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionwon't fix 
Product Version2016.1 
Target VersionFixed in Version 
Summary0003199: "gem update" produces update errors | failed update of 3 gems
DescriptionAll other gems update successfully except for do_mysql do_postgres do_sqlite3.
This happenes on a fresh install of LUKS encrypted Kali Rolling.
The output of all 3 mkmf.log files are in the Additional Information section.

:~# gem update
Updating installed gems
Updating do_mysql
Building native extensions. This could take a while...
ERROR: Error installing do_mysql:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/do_mysql-0.10.17/ext/do_mysql
/usr/bin/ruby2.3 -r ./siteconf20160331-15612-eht379.rb extconf.rb
checking for mysql_query() in -lmysqlclient... 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
    --without-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=/usr/bin/$(RUBY_BASE_NAME)2.3
    --with-mysql-config
    --without-mysql-config
    --with-mysql-dir
    --without-mysql-dir
    --with-mysql-include
    --without-mysql-include=${mysql-dir}/include
    --with-mysql-lib
    --without-mysql-lib=${mysql-dir}/lib
    --with-mysqlclientlib
    --without-mysqlclientlib

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_mysql-0.10.17/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/do_mysql-0.10.17 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_mysql-0.10.17/gem_make.out
Updating do_postgres
Building native extensions. This could take a while...
ERROR: Error installing do_postgres:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/do_postgres-0.10.17/ext/do_postgres
/usr/bin/ruby2.3 -r ./siteconf20160331-15612-g7oinj.rb extconf.rb
You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.
You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.
You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.
You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.
checking for main() in -lpq... no
checking for main() in -llibpq... 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
    --without-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=/usr/bin/$(RUBY_BASE_NAME)2.3
    --with-pgsql-server-dir
    --without-pgsql-server-dir
    --with-pgsql-server-include
    --without-pgsql-server-include=${pgsql-server-dir}/include
    --with-pgsql-server-lib
    --without-pgsql-server-lib=${pgsql-server-dir}/lib
    --with-pgsql-client-dir
    --without-pgsql-client-dir
    --with-pgsql-client-include
    --without-pgsql-client-include=${pgsql-client-dir}/include
    --with-pgsql-client-lib
    --without-pgsql-client-lib=${pgsql-client-dir}/lib
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
Could not find PostgreSQL build environment (libraries & headers): Makefile not created

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_postgres-0.10.17/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/do_postgres-0.10.17 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_postgres-0.10.17/gem_make.out
Updating do_sqlite3
Building native extensions. This could take a while...
ERROR: Error installing do_sqlite3:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/do_sqlite3-0.10.17/ext/do_sqlite3
/usr/bin/ruby2.3 -r ./siteconf20160331-15612-14qhfcp.rb extconf.rb
checking for sqlite3.h... 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
    --without-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=/usr/bin/$(RUBY_BASE_NAME)2.3
    --with-sqlite3-dir
    --without-sqlite3-dir
    --with-sqlite3-include
    --without-sqlite3-include=${sqlite3-dir}/include
    --with-sqlite3-lib
    --without-sqlite3-lib=${sqlite3-dir}/lib

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_sqlite3-0.10.17/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/do_sqlite3-0.10.17 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/do_sqlite3-0.10.17/gem_make.out
Gems updated: do_mysql do_postgres do_sqlite3
Steps To ReproduceExecute "gem update" in the terminal.
Additional Informationdo_mysql mkmf.log output:


find_library: checking for mysql_query() in -lmysqlclient... -------------------- no

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -lm -lc"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/usr/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c: In function ‘t’:
conftest.c:13:57: error: ‘mysql_query’ undeclared (first use in this function)
 int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
                                                         ^
conftest.c:13:57: 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: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))mysql_query; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib/mysql5/mysql -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lmysqlclient -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void mysql_query();
14: int t(void) { mysql_query(); return 0; }
/* end */

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



do_postgres mkmf.log output:


have_library: checking for main() in -lpq... -------------------- no

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -lm -lc"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lpq -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -lpq
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))main; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lpq -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c:13:13: error: conflicting types for ‘main’
 extern void main();
             ^
conftest.c:5:5: note: previous definition of ‘main’ was here
 int main(int argc, char **argv)
     ^
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void main();
14: int t(void) { main(); return 0; }
/* end */

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

have_library: checking for main() in -llibpq... -------------------- no

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -llibpq -lpthread -lgmp -ldl -lcrypt -lm -lc"
/usr/bin/ld: cannot find -llibpq
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))main; return !p; }
/* end */

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -llibpq -lpthread -lgmp -ldl -lcrypt -lm -lc"
conftest.c:13:13: error: conflicting types for ‘main’
 extern void main();
             ^
conftest.c:5:5: note: previous definition of ‘main’ was here
 int main(int argc, char **argv)
     ^
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: /*top*/
 4: extern int t(void);
 5: int main(int argc, char **argv)
 6: {
 7: if (argc > 1000000) {
 8: printf("%p", &t);
 9: }
10:
11: return 0;
12: }
13: extern void main();
14: int t(void) { main(); return 0; }
/* end */

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



do_sqlite3 mkmf.log output:


have_header: checking for sqlite3.h... -------------------- no

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -I/opt/local/include -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wall -DHAVE_NO_DATETIME_NEWBANG conftest.c -L. -L/usr/lib/x86_64-linux-gnu -L/usr/local/lib -L/opt/local/lib -L/usr/lib -L. -Wl,-z,relro -fstack-protector -rdynamic -Wl,-export-dynamic -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -lm -lc"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */

"gcc -E -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -I/usr/local/include -I/opt/local/include -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wall -DHAVE_NO_DATETIME_NEWBANG conftest.c -o conftest.i"
conftest.c:3:21: fatal error: sqlite3.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <sqlite3.h>
/* end */

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

Activities

UNATCO

2016-03-31 22:21

reporter  

do_mysql_mkmf.log (26,962 bytes)

rhertzog

2016-04-01 07:52

administrator   ~0005069

Don't use "gem update". New versions of ruby gems are packaged when required, updating them manually is a sure way to break a future upgrade of your system.

And the error you get is no fault of us, you just lack the needed *-dev packages.

Issue History

Date Modified Username Field Change
2016-03-31 22:21 UNATCO New Issue
2016-03-31 22:21 UNATCO File Added: do_mysql_mkmf.log
2016-04-01 07:52 rhertzog Note Added: 0005069
2016-04-01 07:52 rhertzog Status new => closed
2016-04-01 07:52 rhertzog Assigned To => rhertzog
2016-04-01 07:52 rhertzog Resolution open => won't fix