I have a question about a failed ubuntu build.

Asked by GraphvizDev

How do I get assistance for a failed ubuntu build? The <email address hidden> rejected my request for help but suggested I contact ubuntu-devel-discuss@ How do I go about doing that? The problem I am having is that a ruby header file is not being found in the same location as my local build server.

Question information

Language:
English Edit question
Status:
Answered
For:
Launchpad itself Edit question
Assignee:
William Grant Edit question
Last query:
Last reply:
Revision history for this message
Gianfranco Costamagna (costamagnagianfranco) said :
#1

feel free to contact me, I would b glad to help you by mail

Revision history for this message
Laura Czajkowski (czajkowski) said :
#2

please don't mark it answered and take the answer off answers

Revision history for this message
William Grant (wgrant) said :
#3

You can reproduce and debug the build failure locally using pbuilder: https://wiki.ubuntu.com/PbuilderHowto

Revision history for this message
GraphvizDev (gviz-adm) said :
#4

Thank you all for responding to my request for help.

I have built the application with pbuilder and it did help me solve an issue. Here is the problem I am having now.

My application, graphviz is being built on ubuntu-raring (i686 and x86_64). It needs to have ruby installed. There is a header file /usr/include/ruby-1.9.1/ruby/ruby.h that references ruby/config.h. This second include file is located under /usr/include/ruby-1.9.1/i686-linux/ruby on the i686 platform and under /usr/include/ruby-1.9.1/x86_64-linux on the x86-64 platform. I am able to build both platforms locally using the corresponding -I compile flag. The launchpad build on the i686 platform works but the x86_64 build is failing because it cannot find the config.h file. I need to know where the ruby/config.h file is located on the launchpad x86_64 ruby installation.

Revision history for this message
William Grant (wgrant) said :
#5

On 25/05/13 00:31, GraphvizDev wrote:
> Thank you all for responding to my request for help.
>
> I have built the application with pbuilder and it did help me solve an
> issue. Here is the problem I am having now.
>
> My application, graphviz is being built on ubuntu-raring (i686 and
> x86_64). It needs to have ruby installed. There is a header file
> /usr/include/ruby-1.9.1/ruby/ruby.h that references ruby/config.h. This
> second include file is located under
> /usr/include/ruby-1.9.1/i686-linux/ruby on the i686 platform and under
> /usr/include/ruby-1.9.1/x86_64-linux on the x86-64 platform. I am able
> to build both platforms locally using the corresponding -I compile flag.
> The launchpad build on the i686 platform works but the x86_64 build is
> failing because it cannot find the config.h file. I need to know where
> the ruby/config.h file is located on the launchpad x86_64 ruby
> installation.

Launchpad doesn't have any special versions of libraries. It builds your
package using Ubuntu packages exactly like pbuilder does, so you can
reproduce the failure locally when building in a raring amd64 pbuilder.

From my raring amd64 pbuilder:

root@lamuella:/# dpkg -L ruby1.9.1-dev | grep config.h
/usr/include/ruby-1.9.1/x86_64-linux/ruby/config.h

Revision history for this message
GraphvizDev (gviz-adm) said :
#6

That is were the config.h file is located on my raring amd64. I put some print statements in my configure script and here is the log file result:

configure:23284: checking ruby.h usability
checking ruby.h usability... configure:23284: i686-linux-gnu-gcc -c -g -O2 -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith -Wall -ffast-math -I/usr/lib/ruby/1.9.1/i686-linux -I/usr/include/ruby-1.9.1 -I/usr/include/ruby-1.9.1/x86_64-linux conftest.c >&5
In file included from /usr/include/ruby-1.9.1/ruby.h:32:0,
                 from conftest.c:158:
/usr/include/ruby-1.9.1/ruby/ruby.h:24:25: fatal error: ruby/config.h: No such file or directory
compilation terminated.

Revision history for this message
William Grant (wgrant) said :
#7

From your configure.ac:

         RUBY_CFLAGS="-I`$RUBY $srcdir/config/config_ruby.rb archdir` -I/usr/include/ruby-1.9.1 -I/usr/include/ruby-1.9.1/i686-linux"

You've hardcoded the i386 path but not the amd64 one.

I debugged this locally in an amd64 pbuilder (something you can do too), and hacked it up until it worked: http://paste.ubuntu.com/5698865/. But you'd want to check Debian Ruby policy to see how you're meant to actually do it.

Can you help with this problem?

Provide an answer of your own, or ask GraphvizDev for more information if necessary.

To post a message you must log in.