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
