Project

General

Profile

Actions

Feature #4946

closed

Building libruby-static.a with option nodynamic and --with-static-link-ext doesn't disable dlopen

Added by regularfry (Alex Young) over 13 years ago. Updated almost 12 years ago.

Status:
Closed
Target version:
[ruby-core:37676]

Description

I uncomment option nodynamic in ext/Setup and run ./configure --with-static-link-ext, then make libruby-static.a

I then compile this:

/* trial.c */
#include "ruby.h"
int main(){
ruby_init();
return 0;
}

like so:

gcc -c trial.c -o trial.o -Iruby-1.9.2-p180/include -Iruby-1.9.2-p180/.ext/include/i686-linux
gcc -static trial.o -Lruby-1.9.2-p180 -lruby-static -lpthread -lrt -ldl -lcrypt -lm -o trial

And I see this warning:

ruby-1.9.2-p180/libruby-static.a(dln.o): In function `dln_load':
/home/alex/projects/scratch/ruby/ruby-1.9.2-p180/dln.c:1276: warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

I specifically do not want any run-time code loading capability, but I can see no documented way to disable dlopen; is there any way to silence this warning?

Actions #1

Updated by nobu (Nobuyoshi Nakada) over 13 years ago

  • Tracker changed from Bug to Feature

There is no way to disable dynamic loading now.
--with-static-linked-ext just let all bundled extension libraries linked statically.

Actions #2

Updated by naruse (Yui NARUSE) over 13 years ago

  • Target version changed from 1.9.2 to 2.0.0

Updated by mame (Yusuke Endoh) over 12 years ago

  • Status changed from Open to Assigned
  • Assignee set to nobu (Nobuyoshi Nakada)
  • Priority changed from Normal to 3
Actions #4

Updated by nobu (Nobuyoshi Nakada) almost 12 years ago

  • Status changed from Assigned to Feedback

Can't you disable it with the following?
ac_cv_func_dlopen=no configure

Actions #5

Updated by nobu (Nobuyoshi Nakada) almost 12 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r37821.
Alex, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


configure.in: --disable-dln

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0