On Mon, Nov 24, 2014 at 08:11:08AM -0500, Stephan, Richard via smartos-discuss 
wrote:

>                         LDFLAGS: 
>                      H5_LDFLAGS: 
>                      AM_LDFLAGS:  -L/opt/local/hdf5/lib
>                 Extra libraries:  -lz -lnsl -lsocket -ldl -lm 
>                        Archiver: ar
>                          Ranlib: ranlib
>               Debugged Packages: 
>                     API Tracing: no

A few notes here (these are not the cause of the observed failure):

1. Do not install sotware you build yourself into /opt/local.  That path
is reserved for and managed by pkgsrc (see pkgin(1)).  While it is
possible to install your own software there, doing so is likely to cause
conflicts and confusion later.  Use /usr/local or /opt/somethingelse.

2. Any time software is built with -L/something, you almost always need
-R/something as well.  Without this, the resulting binaries will not be
able to find their runtime library dependencies and will not run.  There
are rare instances when this is ok, but it's unlikely this is one of
them.

3. On illumos systems, "ranlib" does nothing and is not needed.  This is
purely FYI; invoking it is harmless.

> The make however returns many warnings concerning sizes:
> 
> H5Dscatgath.c: In function 'H5Dscatter':
> H5Dscatgath.c:926:20: warning: size of 'iter' is 2232 bytes [-Wlarger-than=]
> H5Dscatgath.c: In function 'H5Dgather':
> H5Dscatgath.c:1026:20: warning: size of 'iter' is 2232 bytes [-Wlarger-than=]
> H5Dscatgath.c: In function 'H5D__gather_file':
> H5Dscatgath.c:270:1: warning: stack usage is 16720 bytes [-Wstack-usage=]
> H5Dscatgath.c:270:1: warning: the frame size of 16624 bytes is larger than 
> 16384 bytes [-Wframe-larger-than=]
> H5Dscatgath.c: In function 'H5D__gather_mem.isra.0':
> H5Dscatgath.c:442:1: warning: stack usage is 16592 bytes [-Wstack-usage=]
> H5Dscatgath.c:442:1: warning: the frame size of 16496 bytes is larger than 
> 16384 bytes [-Wframe-larger-than=]
> H5Dscatgath.c: In function 'H5D__scatter_mem':
> H5Dscatgath.c:355:1: warning: stack usage is 16576 bytes [-Wstack-usage=]
> H5Dscatgath.c:355:1: warning: the frame size of 16480 bytes is larger than 
> 16384 bytes [-Wframe-larger-than=]
> H5Dscatgath.c: In function 'H5D__scatgath_read':
> H5Dscatgath.c:574:1: warning: stack usage is 23392 bytes [-Wstack-usage=]
> H5Dscatgath.c:574:1: warning: the frame size of 23296 bytes is larger than 
> 16384 bytes [-Wframe-larger-than=]
> H5Dscatgath.c: In function 'H5D__scatgath_write':
> H5Dscatgath.c:705:1: warning: stack usage is 23504 bytes [-Wstack-usage=]
> H5Dscatgath.c:705:1: warning: the frame size of 23408 bytes is larger than 
> 16384 bytes [-Wframe-larger-than=]
>   CC       H5Dselect.lo
> H5Dselect.c: In function 'H5D__select_io':
> H5Dselect.c:89:20: warning: size of 'mem_iter' is 2232 bytes [-Wlarger-than=]
> H5Dselect.c:91:20: warning: size of 'file_iter' is 2232 bytes [-Wlarger-than=]

These warnings are generated because this software is creating large
objects on its stack, which is a bad practice in general.  However, it
may not be a problem; if the software is written to ensure that deep
stack frames do not occur (usually but not always due to recursion),
and that any additional threads created have adequate stack allocation,
this may be fine.  None of this is specific to illumos, by the way; the
warnings (and the principles) apply to all operating systems.  The
compiler is simply warning you that this software is written in a
potentially dangerous way.

> Then finally has a set of error messages:
> 
> Making all in src
> make[1]: Entering directory '/home/rstephan/hdf5-1.8.14/src'
> make  all-am
> make[2]: Entering directory '/home/rstephan/hdf5-1.8.14/src'
>   CC       H5Fint.lo
> H5Fint.c: In function 'H5F_build_actual_name':
> H5Fint.c:1572:27: error: 'PATH_MAX' undeclared (first use in this function)
> H5Fint.c:1572:27: note: each undeclared identifier is reported only once for 
> each function it appears in

This error is caused by not including the proper headers (most likely in
"H5Fint.c").  PATH_MAX is defined in <limits.h>; see limits.h(3head).

> H5Fint.c:1609:13: warning: implicit declaration of function 'realpath' 
> [-Wimplicit-function-declaration]
> H5Fint.c:1609:13: warning: nested extern declaration of 'realpath' 
> [-Wnested-externs]
> H5Fint.c:1572:18: warning: unused variable 'realname' [-Wunused-variable]

These warnings may or may not be induced by the above error; it's
difficult to be sure.  I suggest fixing it first and then seeing if they
recur.

> Makefile:1222: recipe for target 'H5Fint.lo' failed
> make[2]: *** [H5Fint.lo] Error 1
> make[2]: Leaving directory '/home/rstephan/hdf5-1.8.14/src'
> Makefile:850: recipe for target 'all' failed
> make[1]: *** [all] Error 2
> make[1]: Leaving directory '/home/rstephan/hdf5-1.8.14/src'
> Makefile:586: recipe for target 'all-recursive' failed
> make: *** [all-recursive] Error 1

The rest of this is not new errors, it's just the recursive failure
induced by the above.  There's only one real error here.

> I am at a loss as to what to do.

Fix the software, or file a bug with the project/vendor per the above.


-------------------------------------------
smartos-discuss
Archives: https://www.listbox.com/member/archive/184463/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184463/25769125-55cfbc00
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769125&id_secret=25769125-7688e9fb
Powered by Listbox: http://www.listbox.com

Reply via email to