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
>>
>
>

Reply via email to