Red Hat Bugzilla – Bug 830234
Package config does not include a reference to the /usr/include/x86_64-linux
Last modified: 2015-06-21 20:07:55 EDT
Description of problem:
There needs to be a reference in the package config file to the architecture-specific directory; i.e., /usr/include/x86_64-linux on 64bit systsems.
When trying to build using cmake, for example, the discovery portion only finds the reference to /usr/include. However, there are header files in /usr/include/x86_64-linux that are necessary but which are not being pointed to by the config file.
Version-Release number of selected component (if applicable):
mcpierce@mcpierce-laptop:~ $ rpm -q ruby-devel
Steps to Reproduce:
1. Create a cmake project that depends on Ruby.
2. Use the cmake command to generate Makefiles.
3. Use make to build.
The following results, which are due to pkgconfig not telling cmake about the platform-specific header location:
Scanning dependencies of target cqpid_ruby
[ 93%] Building CXX object bindings/qpid/ruby/CMakeFiles/cqpid_ruby.dir/rubyRUBY_wrap.o
In file included from /usr/include/ruby.h:32:0,
/usr/include/ruby/ruby.h:24:25: fatal error: ruby/config.h: No such file or directory
make: *** [bindings/qpid/ruby/CMakeFiles/cqpid_ruby.dir/rubyRUBY_wrap.o] Error 1
make: *** [bindings/qpid/ruby/CMakeFiles/cqpid_ruby.dir/all] Error 2
make: *** [all] Error 2
Compilation to complete successfully.
*** Bug 830235 has been marked as a duplicate of this bug. ***
Would you mind to open upstream bug regarding this issue? It shouldn't be a big deal, since it should be just a simple extension of 
Turns out the problem was not with Ruby's pkgconfig settings but in our CMakeList.txt file. We had a type (RUBY_INCLUDE_DIR instead of RUBY_INCLUDE_DIRS) and weren't using the include_directories($RUBY_INCLUDE_DIRS) directive but instead were explicitly writing the commandline out.