Hi, Erik. I use 0.22.1 to build libmesos.so, could reproduce your problem.
But use master branch, could not reproduce.


On Sun, Jul 12, 2015 at 3:09 PM, Erik Weathers <[email protected]>
wrote:

> FYI, here's how I'm doing the build:
> https://gist.github.com/erikdw/67db1eaeeeec4fb1ede8
>
> I included the RPM list on the VM.
>
> - Erik
>
>
> On Sat, Jul 11, 2015 at 11:35 PM, Erik Weathers <[email protected]>
> wrote:
>
> > Thanks for bearing with me Haosong.
> >
> > No environment variable mucking with it that I can see.  Only potentially
> > relevant thing is perhaps the LD_LIBRARY_PATH set by "scl":
> >
> >
> LD_LIBRARY_PATH=/opt/rh/devtoolset-2/root/usr/lib64:/opt/rh/devtoolset-2/root/usr/lib
> >
> > Regarding package versions, we are identical for those:
> > automake-1.11.1-4.el6.noarch
> > autoconf-2.63-5.1.el6.noarch
> > libtool-2.2.6-15.5.el6.x86_64
> >
> > Are you using scl with devtool-set2?
> >
> > I feel like the original suggestion you had won't yield different
> behavior
> > than my original LDFLAGS setting.  i.e., my belief is that
> "-Wl,-rpath=/usr/local/lib"
> > is identical to "-Wl,-rpath,/usr/local/lib".  I'm guessing these are just
> > syntax variants.
> >
> > It's worth reemphasizing that the mesos-slave, mesos-master, etc.
> binaries
> > have the RPATH set as I expect (the --prefix setting is sufficient for
> that
> > it).
> >
> > - Erik
> >
> > On Sat, Jul 11, 2015 at 11:24 PM, haosdent <[email protected]> wrote:
> >
> >> My autotool version:
> >> automake-1.11.1-4.el6.noarch
> >> autoconf-2.63-5.1.el6.noarch
> >> libtool-2.2.6-15.5.el6.x86_64
> >>
> >> On Sun, Jul 12, 2015 at 2:23 PM, haosdent <[email protected]> wrote:
> >>
> >> > I also use CentOS 6.5.
> >> >
> >> > On Sun, Jul 12, 2015 at 2:20 PM, haosdent <[email protected]> wrote:
> >> >
> >> >> Does any exists environment variables affect your build?
> >> >>
> >> >> On Sun, Jul 12, 2015 at 2:16 PM, Erik Weathers <
> [email protected]>
> >> >> wrote:
> >> >>
> >> >>> Thanks for the response Hao.  Unfortunately that didn't work for me,
> >> the
> >> >>> default /usr/lib64 is inserted anyways.
> >> >>> I'm building on CentOS 6.5, using the instructions for CentOS 6.6
> >> here:
> >> >>> http://mesos.apache.org/gettingstarted/
> >> >>>
> >> >>> - Erik
> >> >>>
> >> >>> On Sat, Jul 11, 2015 at 10:08 PM, haosdent <[email protected]>
> >> wrote:
> >> >>>
> >> >>> > Hi, @Erik I think you need to change "-Wl,-rpath=/usr/local/lib"
> to
> >> >>> > "-Wl,-rpath,/usr/local/lib". My build step:
> >> >>> >
> >> >>> > ```
> >> >>> > LDFLAGS="-Wl,-rpath,/usr/local/lib" ../configure
> >> >>> > ```
> >> >>> >
> >> >>> > And the result show the RPATH only contains /usr/local/lib
> >> >>> >
> >> >>> > ```
> >> >>> > $objdump -x ./src/.libs/libmesos.so |grep RPATH
> >> >>> >   RPATH                /usr/local/lib
> >> >>> > ```
> >> >>> >
> >> >>> > On Sun, Jul 12, 2015 at 12:06 PM, Erik Weathers <
> >> [email protected]
> >> >>> >
> >> >>> > wrote:
> >> >>> >
> >> >>> > > hi mesos dev people,
> >> >>> > >
> >> >>> > > I'm hoping to enlist some help in building mesos such that the
> >> >>> > libmesos.so
> >> >>> > > has its RPATH set as our environment expects.  Specifically, in
> >> our
> >> >>> > > environment we install our own custom-built libraries under
> >> >>> > /usr/local/lib,
> >> >>> > > so I want the RPATH in the libmesos.so ELF to look like so:
> >> >>> > >
> >> >>> > >    Library rpath: [/usr/local/lib:/usr/lib64]
> >> >>> > >
> >> >>> > > I've tried to effect this change by running configure like so:
> >> >>> > >
> >> >>> > >    LDFLAGS="-Wl,-rpath=/usr/local/lib" ./configure
> >> >>> --prefix=/usr/local
> >> >>> > >
> >> >>> > > This resulted in the following RPATH being embedded in
> >> libmesos.so:
> >> >>> > >
> >> >>> > >    Library rpath: [/usr/lib64:/usr/local/lib]
> >> >>> > >
> >> >>> > > The RPATH *does* have /usr/local/lib, but I want that to be the
> >> 1st
> >> >>> > entry,
> >> >>> > > not the 2nd.  I'm not familiar enough with autoconf nor libtool
> to
> >> >>> figure
> >> >>> > > out how to get the order reversed.  I *could* hack the embedded
> >> RPATH
> >> >>> > with
> >> >>> > > the chrpath tool, but I'd prefer changing build arguments
> instead.
> >> >>> > >
> >> >>> > > I see in the g++ cmd that generates the .so that there are
> >> includes
> >> >>> of
> >> >>> > > /usr/lib64 earlier than my passed LDFLAGS, so I wonder if it's a
> >> >>> > > configure.ac change I need to make to allow the LDFLAGS to be
> >> >>> shoved in
> >> >>> > > front instead of behind the automatically generated /usr/lib64
> >> >>> portion.
> >> >>> > >
> >> >>> > > Notably, simple use of the --prefix=/usr/local option allows the
> >> >>> mesos-*
> >> >>> > > binaries to have the embedded RPATH as I want, I'm only
> struggling
> >> >>> with
> >> >>> > the
> >> >>> > > libmesos.so RPATH.
> >> >>> > >
> >> >>> > > Thanks for whatever help you might provide!
> >> >>> > >
> >> >>> > > - Erik
> >> >>> > >
> >> >>> > > P.S., this is for building mesos-0.22.1
> >> >>> > > P.P.S., I tried --with-rpath=/usr/local/lib, but that didn't
> help
> >> >>> either.
> >> >>> > >
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> > --
> >> >>> > Best Regards,
> >> >>> > Haosdent Huang
> >> >>> >
> >> >>>
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Best Regards,
> >> >> Haosdent Huang
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > Best Regards,
> >> > Haosdent Huang
> >> >
> >>
> >>
> >>
> >> --
> >> Best Regards,
> >> Haosdent Huang
> >>
> >
> >
>



-- 
Best Regards,
Haosdent Huang

Reply via email to