You have security/openssl installed but do not have DEFAULT_VERSIONS+=ssl=openssl set in your make.conf

10,111

Just run echo 'DEFAULT_VERSIONS+=ssl=openssl' >> /etc/make.conf (as root) if you really have installed security/openssl.


For users of an other port than security/openssl:

  • for security/openssl-devel: echo 'DEFAULT_VERSIONS+=ssl=openssl-devel' >> /etc/make.conf
  • for security/libressl: echo 'DEFAULT_VERSIONS+=ssl=libressl' >> /etc/make.conf
  • for security/libressl-devel: echo 'DEFAULT_VERSIONS+=ssl=libressl-devel' >> /etc/make.conf

To use/link openssl from your system (world): DEFAULT_VERSIONS+=ssl=base (default without installing any libressl* or openssl* port).


If you get the following error:

You have a /usr/local/lib/libcrypto.so file installed, but the framework is unable to determine what port it comes from. Add DEFAULT_VERSIONS+=ssl= to your /etc/make.conf and try again.

And you don't know or can't remember which one you have installed, check the output of pkg info -ox "openssl|libressl", for example, to determine how to define ssl as DEFAULT_VERSIONS.

Note: OpenSSL implementation, using ports (not packages), can be switched at any time but:

  1. make sure programs that rely on it are compatible (few months ago, a port - I can't remember which one - was marked incompatible with libressl)
  2. each port which depends on it have to be rebuild (eg to switch from openssl to libressl: portmaster -o libressl openssl && portmaster -r libressl should do the trick)
Share:
10,111

Related videos on Youtube

cimnine
Author by

cimnine

Updated on September 18, 2022

Comments

  • cimnine
    cimnine almost 2 years

    On FreeBSD, ever since I installed openssl explicitly I have the following message when I install most ports that require openssl:

    /!\ WARNING /!\
    You have security/openssl installed but do not have DEFAULT_VERSIONS+=ssl=openssl set in your make.conf
    

    As I'm fairly new to FreeBSD, I would like to know what's the meaning of the message and how I can adopt my configs to get rid of it.

  • cimnine
    cimnine almost 8 years
    Could elaborate about the logic behind? Do I get it right, if this tells all future port-builds to use the openssl port I installed? Instead of whatever might have been installed already?
  • julp
    julp almost 8 years
    You can't install, throught ports, two different OpenSSL implementations. This tells 1) if ports have to be linked to openssl part of your system (/usr/lib/lib{crypto,ssl}.so) or, a newer one, you may have installed via ports (/usr/local/lib/lib{crypto,ssl,tls}.so) ; 2) FreeBSD needs this to handle ports dependencies since this gives you the choice of the OpenSSL implementation you want to use.