Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#16884 - [ruby] 1.9 header files broken (config.h)

Attached to Project: Arch Linux
Opened by Anne Edit (Aedit) - Wednesday, 28 October 2009, 17:09 GMT
Last edited by Allan McRae (Allan) - Monday, 02 November 2009, 12:48 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Allan McRae (Allan)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
The ruby header files in /usr/include/ruby-1.9.1
are not correct. An attempt to compile with #include <ruby.h>
fails because ruby.h includes "ruby/ruby.h" which tries to
include "ruby/config.h" which does not exist. The required file
is actually in $ARCH-linux/ruby/ruby.config.h

This can be solved with the following link:

ln -s /usr/include/ruby-1.9.1/$ARCH-linux/ruby/config.h /usr/include/ruby-1.9.1/ruby/

What did the ruby devs actually intend here? I don't know.

Additional info:
* package version(s) 1.9.1_p243-2
* background info (which may or may not be useful)

http://lists.kde.org/?l=kde-bindings&m=122962027118121&w=2

http://markmail.org/message/fhkltqprkmkw6jwt#query:link ruby/config.h+page:1+mid:dl6p6rxzgf45nnlg+state:results

Steps to reproduce:
compile anything with #include <ruby.h>
This task depends upon

Closed by  Allan McRae (Allan)
Monday, 02 November 2009, 12:48 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Upstream rejected
Comment by Anne Edit (Aedit) - Wednesday, 28 October 2009, 17:31 GMT
Typo, should be: The required file is actually in $ARCH-linux/ruby/config.h
Comment by Anne Edit (Aedit) - Saturday, 31 October 2009, 12:00 GMT
Any thoughts on this?

I see it was worked around in the PKGBUILD for kdebindings-ruby like this

# fix build with ruby 1.9
# see http://bugs.archlinux.org/task/16175
find ../$pkgbase-$pkgver/ruby -name CMakeLists.txt \
-exec sed -i "s|\${RUBY_INCLUDE_PATH}|\${RUBY_INCLUDE_PATH} /usr/include/ruby-1.9.1/${CARCH}-linux|" {} \;

I came across the problem when updating amarok1 for ruby 1.9.

I guess it's a question of policy now, what to do about this.

1. Add a link in the ruby package.
2. Add an extra include directory to every PKGBUILD that depends on ruby header files.
3. Remain broken until ruby upstream make their header files self-consistent.

(1) and (2) both work, but (1) is easier and also makes Arch a consistent platform for
those who compile their own packages.
Comment by Allan McRae (Allan) - Saturday, 31 October 2009, 12:17 GMT
Is there an upstream bug report for this? I could not find one. I am not sure the best route to fixing without seeing any comments from ruby devs.
Comment by Anne Edit (Aedit) - Saturday, 31 October 2009, 13:42 GMT
I searched, but I could not find an upstream bug report either.
Comment by Allan McRae (Allan) - Saturday, 31 October 2009, 14:00 GMT
Any chance you could file one?
Comment by Anne Edit (Aedit) - Saturday, 31 October 2009, 19:55 GMT Comment by Allan McRae (Allan) - Monday, 02 November 2009, 12:47 GMT
Bug rejected upstream. Closing.

Loading...