[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gpsd-dev] chrpath dependency
From: |
Christian Gagneraud |
Subject: |
[gpsd-dev] chrpath dependency |
Date: |
Fri, 22 Nov 2013 15:26:53 +1300 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 |
Hi,
As I'm setting up a new machine, I just realised what happens if you
don't have chrpath installed (see session log below).
build.txt list chrpath as a build dependency, but Sconstruct just print
a message (lost in the flow of stuff outputed by scons), shouldn't the
build fail if chrpath is not detected?
Is this tool available on *BSD as well or is it linux specific?
Chris
NB: Here is my troubleshooting session (No I hadn't read build.txt at
that time!):
Ubuntu 13.10 amd64 box:
$ scons --version
SCons by Steven Knight et al.:
script: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep
engine: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep
engine path: ['/usr/lib/scons/SCons']
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011, 2012, 2013 The SCons Foundation
$ gcc --version
gcc (Ubuntu/Linaro 4.8.1-10ubuntu8) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ scons
[...]
gcc -o libgpsd.so.22.0.0 -pthread -shared -Wl,-Bsymbolic
-Wl,-soname=libgpsd.so.22 -Wl,-rpath=/home/christiaga/projects/gpsd
-Wl,-rpath=//usr/local/lib bsd_base64.os crc24q.os gpsd_json.os geoid.os
isgps.os libgpsd_core.os net_dgpsip.os net_gnss_dispatch.os net_ntrip.os
ppsthread.os packet.os pseudonmea.os pseudoais.os serial.os subframe.os
timebase.os drivers.os driver_ais.os driver_evermore.os driver_garmin.os
driver_garmin_txt.os driver_geostar.os driver_italk.os driver_navcom.os
driver_nmea0183.os driver_nmea2000.os driver_oncore.os driver_rtcm2.os
driver_rtcm3.os driver_sirf.os driver_superstar2.os driver_tsip.os
driver_ubx.os driver_zodiac.os -L. -L/usr/local/lib -lm -lrt -lcap -lrt
rm -f libgpsd.so; ln -s libgpsd.so.22.0.0 libgpsd.so
rm -f libgpsd.so.22; ln -s libgpsd.so.22.0.0 libgpsd.so.22
rm -f libgpsd.so.22.0; ln -s libgpsd.so.22.0.0 libgpsd.so.22.0
[...]
$ scons test_packet
[...]
gcc -o test_packet -pthread -Wl,-rpath=/home/christiaga/projects/gpsd
-Wl,-rpath=//usr/local/lib test_packet.o -L. -L/usr/local/lib -lrt -lcap
-lgpsd -lgps -lm -lcap
[...]
In both builds: -Wl,-rpath=/home/christiaga/projects/gpsd
-Wl,-rpath=//usr/local/lib
$ ldd test_packet
linux-gate.so.1 => (0xb77bb000)
libgpsd.so.22 => /home/christiaga/projects/gpsd/libgpsd.so.22
(0xb775a000)
libgps.so.21 => /home/christiaga/projects/gpsd/libgps.so.21
(0xb773c000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb76ee000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb753a000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb74f7000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb74ee000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6
(0xb7405000)
/lib/ld-linux.so.2 (0xb77bc000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb73e7000)
=> libgpsd.so is found in $PWD
OpenSuse 12.3 amd64 box:
$ scons --version
SCons by Steven Knight et al.:
script: v2.2.0.issue-2856:2676:d23b7a2f45e8[MODIFIED],
2012/08/05 15:38:28, by garyo on oberbrunner-dev
engine: v2.2.0.issue-2856:2676:d23b7a2f45e8[MODIFIED],
2012/08/05 15:38:28, by garyo on oberbrunner-dev
engine path: ['/usr/lib64/python2.7/site-packages/SCons']
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011, 2012 The SCons Foundation
$ gcc --version
gcc (SUSE Linux) 4.7.2 20130108 [gcc-4_7-branch revision 195012]
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ scons
[...]
gcc -o libgpsd.so.22.0.0 -pthread -shared -Wl,-Bsymbolic
-Wl,-soname=libgpsd.so.22 -Wl,-rpath=//usr/local/lib bsd_base64.os
crc24q.os gpsd_json.os geoid.os isgps.os libgpsd_core.os net_dgpsip.os
net_gnss_dispatch.os net_ntrip.os ppsthread.os packet.os pseudonmea.os
pseudoais.os serial.os subframe.os timebase.os drivers.os driver_ais.os
driver_evermore.os driver_garmin.os driver_garmin_txt.os
driver_geostar.os driver_italk.os driver_navcom.os driver_nmea0183.os
driver_nmea2000.os driver_oncore.os driver_rtcm2.os driver_rtcm3.os
driver_sirf.os driver_superstar2.os driver_tsip.os driver_ubx.os
driver_zodiac.os -L. -L/usr/local/lib -lm -lrt -lrt
rm -f libgpsd.so; ln -s libgpsd.so.22.0.0 libgpsd.so
rm -f libgpsd.so.22; ln -s libgpsd.so.22.0.0 libgpsd.so.22
rm -f libgpsd.so.22.0; ln -s libgpsd.so.22.0.0 libgpsd.so.22.0
[...]
$ scons test_packet
[...]
gcc -o test_packet -pthread -Wl,-rpath=//usr/local/lib test_packet.o -L.
-L/usr/local/lib -lrt -lgpsd -lgps -lm
[...]
In both builds: -Wl,-rpath=//usr/local/lib
$ ldd test_packet
linux-vdso.so.1 (0x00007fff53191000)
librt.so.1 => /lib64/librt.so.1 (0x00007f7b9f1e9000)
libgpsd.so.22 => not found
libgps.so.21 => not found
libm.so.6 => /lib64/libm.so.6 (0x00007f7b9eeea000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7b9eccd000)
libc.so.6 => /lib64/libc.so.6 (0x00007f7b9e91f000)
=> libgpsd.so is not found!
- [gpsd-dev] chrpath dependency,
Christian Gagneraud <=
- Re: [gpsd-dev] chrpath dependency, Hal Murray, 2013/11/21
- Re: [gpsd-dev] chrpath dependency, Christian Gagneraud, 2013/11/21
- Re: [gpsd-dev] chrpath dependency, Eric S. Raymond, 2013/11/22
- Re: [gpsd-dev] chrpath dependency, Christian Gagneraud, 2013/11/22
- Re: [gpsd-dev] chrpath dependency, Eric S. Raymond, 2013/11/23
- Re: [gpsd-dev] chrpath dependency, Greg Troxel, 2013/11/23
- Re: [gpsd-dev] chrpath dependency, Eric S. Raymond, 2013/11/24
Re: [gpsd-dev] chrpath dependency, Gerry Creager - NOAA Affiliate, 2013/11/25
Re: [gpsd-dev] chrpath dependency, Greg Troxel, 2013/11/22