gpt4 book ai didi

gcc - 如何在Beaglebone Black上编译openssl 1.0.2f?

转载 作者:行者123 更新时间:2023-12-02 10:46:39 26 4
gpt4 key购买 nike

当前,我使用下面的命令从openssl包中编译openssl 1.0.2f:

$ tar xzf openssl-1.0.2e.tar.gz
$ cd openssl-1.0.2e
$export PREFIX={PREFIX}
$./Configure -DOPENSSL_NO_HEARTBEATS --openssldir=$PREFIX shared os/compiler:${TARGET}
$ make

这是Beaglebone Black的建筑
$uname -a
$Linux beaglebone 3.8.13-bone70 #1 SMP Fri Jan 23 02:15:42 UTC 2015 armv7l GNU/Linux

我也尝试从列表中设置TARGET:
  • linux-armv7l || linux-aarch64 || linux-alpha + bwx-ccc || linux-alpha + bwx-gcc ||
    linux-alpha-ccc || linux-alpha-gcc || linux-aout || linux-armv4 || linux-elf || linux-generic32 || linux-generic64 || linux-ia32-icc || linux-ia64 || linux-ia64-icc || linux-mips32 || linux-mips64 || linux-ppc || linux-ppc64 || linux-ppc64le
    || linux-sparcv8 || linux-sparcv9 || linux-x32 || linux-x86_64 || linux-x86_64-clang || linux-x86_64-icc || linux32-s390x || linux64-mips64 || linux64-s390x || linux64-sparcv9

  • 但是当make openssl时,它返回:
    make[1]: {TARGET}: Command not found

    我也尝试设置:
    os/compiler:gcc

    gcc版本:
    $ gcc --version
    gcc (Debian 4.9.2-10) 4.9.2

    但是当make openssl时,它返回:
    /bin/sh: 1: ./pod2mantest: Permission denied
    installing man1/CA.pl.1
    sh: 1: --section=1: not found
    Makefile:634: recipe for target 'install_docs' failed
    make: *** [install_docs] Error 127

    你能告诉我这里有什么问题吗?

    最佳答案

    How to compile openssl 1.0.2f on Beaglebone Black?



    我相信您想要 linux-armv4目标。
    $ ./Configure LIST | grep -i arm
    android-armeabi
    linux-arm64ilp32
    linux-armv4

    另请参阅OpenSSL Wiki上的 Compilation and Installation

    遵循Leśny的建议并运行 ./config可能是最容易的。 config尝试猜测目标。如果猜测是错误的,则将 ./Configure与三元组一起使用:
    $ wget https://www.openssl.org/source/openssl-1.0.2g.tar.gz
    ...
    $ tar xzf openssl-1.0.2g.tar.gz
    ...
    $ cd openssl-1.0.2g

    然后(注意 linux-armv4 ):
    $ ./config shared no-ssl2 no-ssl3 no-comp -DOPENSSL_NO_HEARTBEATS                     
    Operating system: armv7l-whatever-linux2
    Configuring for linux-armv4
    no-comp [option] OPENSSL_NO_COMP (skip dir)
    no-ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128 (skip dir)
    no-gmp [default] OPENSSL_NO_GMP (skip dir)
    no-jpake [experimental] OPENSSL_NO_JPAKE (skip dir)
    no-krb5 [krb5-flavor not specified] OPENSSL_NO_KRB5
    no-libunbound [experimental] OPENSSL_NO_LIBUNBOUND (skip dir)
    no-md2 [default] OPENSSL_NO_MD2 (skip dir)
    no-rc5 [default] OPENSSL_NO_RC5 (skip dir)
    no-rfc3779 [default] OPENSSL_NO_RFC3779 (skip dir)
    no-sctp [default] OPENSSL_NO_SCTP (skip dir)
    no-ssl-trace [default] OPENSSL_NO_SSL_TRACE (skip dir)
    no-ssl2 [option] OPENSSL_NO_SSL2 (skip dir)
    no-ssl3 [option] OPENSSL_NO_SSL3 (skip dir)
    no-store [experimental] OPENSSL_NO_STORE (skip dir)
    no-unit-test [default] OPENSSL_NO_UNIT_TEST (skip dir)
    no-weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS (skip dir)
    no-zlib [default]
    no-zlib-dynamic [default]
    ...

    您可能需要回退到以下内容:
    $./Configure linux-armv4 shared no-ssl2 no-ssl3 no-comp -DOPENSSL_NO_HEARTBEATS
    ...
    $ make depend
    ...
    $ make clean
    ...
    $ make

    为了完整起见,我从2015年12月开始使用 Debian console image在BeagleBone Black上进行工作(我需要占用2GB的空间,因此可以用于其他用途):
    $ uname -a
    Linux beaglebone 4.1.15-ti-rt-r40 #1 SMP PREEMPT RT Thu Jan 7 23:32:08 UTC 2016 armv7l GNU/Linux

    关于gcc - 如何在Beaglebone Black上编译openssl 1.0.2f?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35792796/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com