Project

General

Profile

Actions

Backport #6734

closed

pkg-config on aix

Added by Anonymous over 11 years ago. Updated almost 11 years ago.

Status:
Closed
[ruby-core:46482]

Description

I put pkg-config back into my path and tried to build ruby. I'm building ruby-1.9.3-p194 on AIX 6100-07-03-1207. The configure pass ends with this error:

Variable 'TARGET' not defined in './ruby.tmp.pc'

The ruby.tmp.pc file for AIX ends up with this line:

DLDFLAGS=-eInit_${TARGET}

This is related to the other question(s) I had but in this case, I don't see a way to fix this at all. I don't know pkg-config much but I'm not seeing a way to get target dependent variables into the pkg-config .pc file.

I moved up to pkg-config 0.27. I tried 0.25 before with the same result.

I tried not using pkg-config but when I try to build a ruby extension, (event machine in this case), the mkmf is confused. It is doing a static link but looking for the shared library -lruby. In that case, ld will look for libruby.a but there is not one. I could create one by hand but I'm trying to understand the direction the ruby project is trying to take.

So that is why I decided to put pkg-config back into my path and see if I can make it work that way. But, so far, I can't.

I got shared libraries working with ruby 1.9.2 but all those tricks are not working with 1.9.3 at this point.

Can someone help me understand how this is intended to work?

Thank you,
Perry Smith


Files

extdldflags.diff (1.89 KB) extdldflags.diff nobu (Nobuyoshi Nakada), 07/17/2012 03:05 PM

Related issues 1 (0 open1 closed)

Has duplicate Backport193 - Backport #8170: dot.dot Makefile references wrong TARGETClosedusa (Usaku NAKAMURA)03/27/2013Actions

Updated by nobu (Nobuyoshi Nakada) over 11 years ago

=begin
I think ((%-e%)) option should not appear in ((%ruby.pc%)) file, because the option is for extension libraries and used by ((%mkmf.rb%)) which never use (({pc})) file, and (({pc})) file is for other libraries/applications and -e option seems not useful but harmful.

Attached a patch to move the option from (({DLDFLAGS})) to (({EXTDLDFLAGS})).
=end

Actions #2

Updated by nobu (Nobuyoshi Nakada) over 11 years ago

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

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


configure.in: EXTDLDFLAGS

  • configure.in (EXTDLDFLAGS): split options for each extension
    libraries, and unused in ruby.pc. [Bug #6734]
  • lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.
Actions #3

Updated by nobu (Nobuyoshi Nakada) about 11 years ago

  • Tracker changed from Bug to Backport
  • Project changed from Ruby master to Backport193
  • Category deleted (build)
  • Status changed from Closed to Assigned
  • Assignee set to usa (Usaku NAKAMURA)
Actions #4

Updated by usa (Usaku NAKAMURA) almost 11 years ago

  • Status changed from Assigned to Closed

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


merge revision(s) 36432: [Backport #6734]

* configure.in (EXTDLDFLAGS): split options for each extension
  libraries, and unused in ruby.pc.  [Bug #6734]

* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0