Project

General

Profile

Actions

Bug #7258

closed

BCE fails while building Linux kernel v. 4.5

Added by Pavel Andrianov almost 8 years ago. Updated about 4 years ago.

Status:
Rejected
Priority:
High
Category:
* Build commands extracting
Target version:
-
Start date:
05/26/2016
Due date:
% Done:

0%

Estimated time:
Detected in build:
svn
Platform:
Published in build:

Description

BCE fails with message
In file included from /usr/include/openssl/bio.h:62:0, from scripts/sign-file.c:24: /usr/include/openssl/e_os2.h:56:33: fatal error: openssl/opensslconf.h: No such file or directory compilation terminated.

The lib openssl is installed and ordinary 'make' in kernel directory successfully finishes.

Actions #1

Updated by Evgeny Novikov almost 8 years ago

  • Status changed from New to Closed
  • Assignee set to Evgeny Novikov
  • Priority changed from Normal to High

In accordance with the official documentation you need to install the OpenSSL development package to build the Linux kernel >4.3.

Actions #2

Updated by Pavel Andrianov almost 8 years ago

As I wrote "The lib openssl is installed and ordinary 'make' in kernel directory successfully finishes".

Actions #3

Updated by Evgeny Novikov almost 8 years ago

These both don't mean that you have the OpenSSL development package installed. Here is the output of ls /usr/include/openssl/ on my computer:

aes.h       bn.h        cms.h       dh.h     ec.h      hmac.h      modes.h            opensslv.h  poly1305.h  safestack.h  ssl.h        ui.h
asn1.h      buffer.h    comp.h      dsa.h    engine.h  idea.h      objects.h          ossl_typ.h  rand.h      sha.h        stack.h      whrlpool.h
asn1_mac.h  camellia.h  conf_api.h  dso.h    e_os2.h   krb5_asn.h  obj_mac.h          pem2.h      rc2.h       srtp.h       tls1.h       x509.h
asn1t.h     cast.h      conf.h      dtls1.h  err.h     lhash.h     ocsp.h             pem.h       rc4.h       ssl23.h      ts.h         x509v3.h
bio.h       chacha.h    crypto.h    ecdh.h   evp.h     md4.h       opensslconf.h      pkcs12.h    ripemd.h    ssl2.h       txt_db.h     x509_vfy.h
blowfish.h  cmac.h      des.h       ecdsa.h  gost.h    md5.h       opensslfeatures.h  pkcs7.h     rsa.h       ssl3.h       ui_compat.h

You can find opensslconf.h there.

Actions #4

Updated by Pavel Andrianov almost 8 years ago

Latest ubuntu libssl-dev moved opensslconf.h from /usr/include/openssl to /usr/include/x86_64-linux-gnu/openssl/. And on my computer the opensslconf.h is located here '/usr/include/i386-linux-gnu/openssl/opensslconf.h' and here '/usr/include/x86_64-linux-gnu/openssl/opensslconf.h'. The 'make' command finds the header at the second path. Likely BCE should also search it in the new directory.

Actions #5

Updated by Evgeny Novikov almost 8 years ago

  • Status changed from Closed to Open
  • Priority changed from High to Low

Likely Ubuntu is a bad player again. In addition to separating headers they likely tuned their system compilers so that they can find appropriate headers.

I am not going to deal with this issue soon, so I advice to tune this ... Ubuntu, e.g. provide symbolic link /usr/include/openssl/.

Actions #6

Updated by Alexey Khoroshilov almost 8 years ago

  • Priority changed from Low to Normal

It is not a problem of Ubuntu, but it is Klever problem that our toolchain does not support multiarch spec.

https://wiki.debian.org/Multiarch

Toolchain multiarch paths

This was implemented early in the mulitarch transition for native toolchains. For libraries the search path is /lib/<triplet>/:/lib:/usr/lib/<triplet>/:/usr/lib

For headers it is /usr/include/<triplet>:/usr/include

Our toolchain have to support out of box many good distributions implementing multiarch feature.

Actions #7

Updated by Evgeny Novikov over 7 years ago

  • Priority changed from Normal to Immediate
Actions #8

Updated by Evgeny Novikov over 7 years ago

  • Priority changed from Immediate to High

We have much more important issues at the moment.

Actions #9

Updated by Alexey Khoroshilov about 7 years ago

It seems there are two approaches to fix the problem correctly:
- to fix CIF to have /usr/include/$(target-multiarch) in stdinc (configure it with --enable-multiarch ???);
- to avoid use CIF as HOSTCC, leave it just as CC.

Actions #10

Updated by Evgeny Novikov about 4 years ago

  • Status changed from Open to Rejected

This issue is not relevant anymore since builds are performed outside Klever with Clade.

Actions

Also available in: Atom PDF