Bug#658310: FTBFS: Header hdfeos5.h or the compiled hdfeos5 library is not found

Francesco P. Lovergine frankie at debian.org
Sun Feb 12 16:40:34 UTC 2012


On Sat, Feb 11, 2012 at 06:35:31PM +0000, peter green wrote:
> The real problem is revealed by mkmf.log
> >-------------------- have_library: checking for main() in
> >-lhe5_hdfeos... -------------------- no "gcc -o conftest -I.
> >-I/usr/lib/ruby/1.8/x86_64-linux -I. -I/usr/include/hdf-eos5
> >-I/usr/lib/include -I/usr/lib/ruby/1.8/x86_64-linux
> >-I/usr/lib/ruby/vendor_ruby/1.8/x86_64-linux -fno-strict-aliasing
> >-g -g -O2 -fPIC conftest.c -L. -L/usr/lib -L/usr/lib/lib
> >-L/usr/lib/ruby/1.8/x86_64-linux
> >-L/usr/lib/ruby/vendor_ruby/1.8/x86_64-linux -L. -rdynamic
> >-Wl,-export-dynamic -lgctp -lruby1.8-static -lhe5_hdfeos -lgctp
> >-lpthread -lrt -ldl -lcrypt -lm -lc" /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSis_attached' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSset_scale' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSattach_scale' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSis_scale' collect2: ld returned 1 exit
> >status checked program was: /* begin */ 1: /*top*/ 2: int main() {
> >return 0; } 3: int t() { void ((*volatile p)()); p = (void
> >((*)()))main; return 0; } /* end */ "gcc -o conftest -I.
> >-I/usr/lib/ruby/1.8/x86_64-linux -I. -I/usr/include/hdf-eos5
> >-I/usr/lib/include -I/usr/lib/ruby/1.8/x86_64-linux
> >-I/usr/lib/ruby/vendor_ruby/1.8/x86_64-linux -fno-strict-aliasing
> >-g -g -O2 -fPIC conftest.c -L. -L/usr/lib -L/usr/lib/lib
> >-L/usr/lib/ruby/1.8/x86_64-linux
> >-L/usr/lib/ruby/vendor_ruby/1.8/x86_64-linux -L. -rdynamic
> >-Wl,-export-dynamic -lgctp -lruby1.8-static -lhe5_hdfeos -lgctp
> >-lpthread -lrt -ldl -lcrypt -lm -lc" /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSis_attached' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSset_scale' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSattach_scale' /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libhe5_hdfeos.so:
> >undefined reference to `H5DSis_scale' collect2: ld returned 1 exit
> >status checked program was: /* begin */ 1: /*top*/ 2: int main() {
> >return 0; } 3: int t() { main(); return 0; } /* end */
> >--------------------
> 
> It seems it is no longer possible to link against libhe5_hdfeos without including some other library (or possiblly at all)
> 
> Alastair McKinstry please advise if this is a bug in ruby-hdfeos5 or in hdf-eos5
>

It is evident that libhe5_hdfeos is using hdf5 high-level library, but not linking it:

$ objdump -T /usr/lib/i386-linux-gnu/libhe5_hdfeos.so.0 |grep H5D
00000000      DF *UND*  00000000              H5Dcreate1
00000000      DF *UND*  00000000              H5Dread
00000000      D  *UND*  00000000              H5DSis_attached
00000000      DF *UND*  00000000              H5Dget_type
00000000      DF *UND*  00000000              H5Dvlen_reclaim
00000000      DF *UND*  00000000              H5Dclose
00000000      DF *UND*  00000000              H5Dwrite
00000000      D  *UND*  00000000              H5DSset_scale
00000000      D  *UND*  00000000              H5DSattach_scale
00000000      D  *UND*  00000000              H5DSis_scale
00000000      DF *UND*  00000000              H5Dget_space
00000000      DF *UND*  00000000              H5Dget_create_plist
00000000      DF *UND*  00000000              H5Dextend
00000000      DF *UND*  00000000              H5Dopen1

So it is an issue in hdf-eos5.

-- 
Francesco P. Lovergine





More information about the Pkg-grass-devel mailing list