From: Jan Kratochvil <jan.kratochvil@redhat.com>
To: Doug Evans <dje@google.com>
Cc: Eli Zaretskii <eliz@gnu.org>, gdb-patches <gdb-patches@sourceware.org>
Subject: Re: path to find libcc1.so?
Date: Sun, 14 Dec 2014 20:46:00 -0000 [thread overview]
Message-ID: <20141214204620.GA6990@host2.jankratochvil.net> (raw)
In-Reply-To: <CADPb22QdkAO+rR8UfkL+_-dRKmF2U9XDp+Raod4axd=jd4oOwg@mail.gmail.com>
On Sat, 13 Dec 2014 22:49:50 +0100, Doug Evans wrote:
> On Sat, Dec 13, 2014 at 12:16 PM, Jan Kratochvil
> <jan.kratochvil@redhat.com> wrote:
> > On Sat, 13 Dec 2014 20:57:35 +0100, Doug Evans wrote:
> >> Early adopters and those who want to contribute may find it preferable
> >> to use, e.g., ~/.gdbinit.
> >>
> >> If this is something we eventually want to do, doing it now will help
> >> people we want/need.
> >>
> >> Plus it's, what, 10 lines of (real) code?
> >
> > It is then questionable whether there should also be a GDB option where to
> > find the GCC driver. Currently gcc/libcc1/findcomp.cc searches it in $PATH.
>
> That is a good question.
>
> If I configure gcc with a certain --prefix,
> and link libcc1.so, with, say, --rpath,
> do/should I need to do anything more?
>
> [for a normal installation (libcc1.so has not been copied out of $prefix and
> into some random directory) should libcc1.so be able to find its gcc
> on its own?]
Currently that libcc1.so will just look at $PATH and find (probably - unless
you modify your $PATH) rather your /usr/bin/x86_64-redhat-linux-gcc instead.
In some way it is correct. libcc1.so is independent from the GCC driver.
libcc1.so just translates API into RPC calls and those RPC calls are
received/processed by libcc1plugin.so (loaded due to -fplugin=libcc1plugin
passed by libcc1.so to its found gcc driver):
/home/jkratoch/redhat/gcchead-root/lib/gcc/x86_64-unknown-linux-gnu/5.0.0/plugin/libcc1plugin.so
libcc1.so (the RPC calls interface) could be even implemented by GDB itself
but for some reason Tom put it at the same source location as the other half
(RPC receiver/peer libcc1plugin.so).
This is why I proposed think if there should be a GDB option where to locate
libcc1.so there could be also a GDB option where to locate the GCC driver,
those are technically two mostly independent binaries.
One could also have a single GDB option to specify where to locate the GCC
driver only. And 'thatpath/gcc -print-file-name=libcc1.so' would really
provide the libcc1.so location.
Jan
prev parent reply other threads:[~2014-12-14 20:46 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-13 0:22 Doug Evans
2014-12-13 7:53 ` Eli Zaretskii
2014-12-13 18:56 ` Jan Kratochvil
2014-12-13 19:57 ` Doug Evans
2014-12-13 20:16 ` Jan Kratochvil
2014-12-13 21:49 ` Doug Evans
2014-12-13 22:12 ` Doug Evans
2014-12-14 20:46 ` Jan Kratochvil [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20141214204620.GA6990@host2.jankratochvil.net \
--to=jan.kratochvil@redhat.com \
--cc=dje@google.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox