On Fri, Aug 21, 2020 at 01:23:19AM -0400, Bud Rozwood via blfs-support wrote:
> Hi,
> 
> I'm getting an error saying:
> 
>    fatal error: sys/sysctl.h: No such file or directory
> 
> when trying to build OpenJDK 14.01+7 using glibc 2.32 version. I've
> looked it up on archlinux.org/packages for glibc version 2.32 and it
> seems that this version of glibc doesn't ship with the header file
> "sysctl.h". I've searched other places and they also said the same
> thing, like for example, Debian's babeld:
> https://www.mail-archive.com/[email protected]/msg1759087.html
> 
> The LFS version is 9.1, System V. The only reason why I'm using this
> version of OpenJDK is for compatibility with the latest FireFox. Also,
> I'm using the latest FireFox and glibc for security updates.

I rarely build OpenJDK, and never before firefox, so I've no idea
what it offers to firefox users.  In BLFS we do not generally talk
about older versions of dependant packages (I have been known to do
so occasionally, and in the wiki for firefox I mention the versions
for required dependencies), so I would not be surprised to learn
that any maintained version of OpenJDK could be used - if it built.

But
http://openjdk.5641.n7.nabble.com/8u-RFR-XS-8244461-JDK-8u-Build-fails-with-glibc-2-32-td410342.htm
with a link to
https://bugs.openjdk.java.net/browse/JDK-8244461
said (before 2.32 was released) that this would only be a problem in
OpenJDK 8u and 7u because in later versions the headers had been
cleaned up.

In any case, in the development book (preparing to be LFS-10.0)
somebody has already tagged 14.0.1+7 as working.  That makes me
think something in your build is wrong.
> 
> Can anyone else confirm this? Would a patch replacing "sys/sysctl.h" to
> "linux/sysctl.h" be sufficient?
> 

And unfortunately, that seems unlikely to work.
iThe glibc-2.32 Release annonucement at
https://sourceware.org/pipermail/libc-announce/2020/000029.html
said:

| The deprecated <sys/sysctl.h> header and the sysctl function have been
|  removed.  To support old binaries, the sysctl function continues to
|  exist as a compatibility symbol (on those architectures which had it),
|  but always fails with ENOSYS.  This reflects the removal of the system
|  call from all architectures, starting with Linux 5.5.

ĸen
-- 
Juliet's version of cleanliness was next to godliness, which was to
say it was erratic, past all understanding and was seldom seen.
                          -- Unseen Academicals
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to