[openssl-users] 'makedepend' in openssl builds: clarify need and correct usage
PGNet Dev
pgnet.dev at gmail.com
Thu Mar 10 14:52:14 UTC 2016
I'm building openssl 1.0.2g on linux64.
After
./configure ...
I'm prompted
Since you've disabled or enabled at least one algorithm, you need to do
the following before building:
make depend
Exec'ing the 'make depend' stage returns lots of warnings,
make depend
making depend in crypto...
make[1]: Entering directory '/usr/local/src/openssl/openssl-1.0.2g/crypto'
makedepend: warning: cryptlib.c (reading /usr/include/stdlib.h, line
32): cannot find include file "stddef.h"
not in ./stddef.h
not in ../stddef.h
not in ../include/stddef.h
not in /usr/include/stddef.h
makedepend: warning: /usr/include/time.h includes
/usr/include/bits/types.h more than once!
Already have
/usr/include/bits/types.h
makedepend: warning: /usr/include/time.h includes
/usr/include/bits/types.h more than once!
Already have
/usr/include/bits/types.h
makedepend: warning: /usr/include/time.h includes
/usr/include/bits/types.h more than once!
Already have
/usr/include/bits/types.h
makedepend: warning: cryptlib.c (reading /usr/include/sys/types.h,
line 146): cannot find include file "stddef.h"
not in ./stddef.h
not in ../stddef.h
not in ../include/stddef.h
not in /usr/include/stddef.h
makedepend: warning: cryptlib.c (reading /usr/include/alloca.h, line
24): cannot find include file "stddef.h"
not in ./stddef.h
not in ../stddef.h
not in ../include/stddef.h
not in /usr/include/stddef.h
...
On the distro, stddef.h is available at
/usr/include/linux/stddef.h
/usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h
/usr/lib64/gcc/x86_64-suse-linux/5/include/stddef.h
Reading wiki & reports at openssl, there's confusing, if not
conflicting, advice.
Must use it,
(1) https://wiki.openssl.org/index.php/Compilation_and_Installation
Dependencies
If you are prompted to run make depend, then you must do so. Its not
just for developers who are updating sources. Its required to update the
standard distribution once configuration options change.
Don't need it
(2) https://wiki.openssl.org/index.php/Compilation_and_Installation
Compilation
After configuring the library, you should run make. If prompted,
there's usually no need to make depend since you are building from a
clean download.
(3)
https://rt.openssl.org/Ticket/Display.html?id=3566&user=guest&pass=guest
"Obviously this needs fixing but as a workaround: if you're building
from scratch (or after "make clean") it should compile fine with without
doing "make depend".
Steve.
--
Dr Stephen N. Henson. OpenSSL project core developer."
Re: 'makedepend',
https://en.wikipedia.org/wiki/Makedepend
makedepend was developed as part of MIT's Project Athena. It was used
extensively in building X11 and ancillary packages, but has since become
superseded by the dependency generation facilities of various compilers,
and is now used primarily as a worst-case fallback, e.g. by depcomp and
GNU Automake.
Further, a quick check (https://www.google.com/search?q=makedepend+stddef
) shows that there's a long history (unresolved?) re: not finding the
sys's stddef.h
Digging around some more, I find that virtually the same issue was
raised on openssl-dev in Apr 2015,
https://mta.openssl.org/pipermail/openssl-dev/2015-April/001263.html
[openssl-dev] `make depend`, advised by ./config, fails to find
stddef.h in system/compiler path. old bug (#3566) says don't bother with
`make depend`? true, or another bug?
with no reply at all.
What, then, IS the current need for 'makedepend' in openssl, and what,
exactly, is the correct/recommended usage for its use in an openssl build?
More information about the openssl-users
mailing list