Building and deploying cfengine on macOS

47 views
Skip to first unread message

Thomas Hansen

unread,
Nov 10, 2017, 4:33:57 PM11/10/17
to help-cfengine
Hi,

Downloaded cfengine community edition 3.10.2 source from cfengine.com as there was no available macOS build.
Compiling for use on my Mac was straight forward, I only had to download openssl and build it (easily done using Brew) as macOS is no longer 
shipped with openssl.
However when I build cfengine the applications are dynamically linked to openssl residing in /usr/local/opt/ and I would very much prefer to have as much as possible inside /var/cfengine/lib/

How do I compile cfengine so these dynamic libraries are stuffed inside cfengine (or otherwise resolve the issue)?

Thanks,

Thomas Hansen

Dimitrios Apostolou

unread,
Nov 13, 2017, 9:13:56 AM11/13/17
to Thomas Hansen, help-cfengine
Hi Thomas,

On Fri, Nov 10, 2017 at 10:33 PM, Thomas Hansen <no.hanse...@gmail.com> wrote:

How do I compile cfengine so these dynamic libraries are stuffed inside cfengine (or otherwise resolve the issue)?


This is an issue with the dependencies then: you have to compile each and every dependency manually, and set the prefix as /var/cfengine (usually it's enough to do ./configure --prefix=/var/cfengine; make; make install ).

But if CFEngine is working fine with the depencies that brew brought in, why go through all that? You can still copy cfengine to other systems as you compiled it (try "make tar-package" to get a nice tarball), but you will have to require that all systems have brew installed, together with the specific dependencies.


Dimitris


Mike Weilgart

unread,
Nov 13, 2017, 10:49:38 PM11/13/17
to Dimitrios Apostolou, Thomas Hansen, help-cfengine
I think you answered your own question, Dimitris.  :)

> ...you will have to require that all systems have brew installed, together with the specific dependencies.

Particularly for managing Mac machines at scale, it would be far nicer to have a single directory (tarball) that could be plopped onto every Mac in your company and run as-is, than to require mucking about with Homebrew on every machine.  (You might want Homebrew anyways for other reasons, but it would be nice to simplify your CFEngine installation itself as much as possible: then all other dependencies can be handled by CFEngine.)

That's my take, anyway.  (I never claimed to be unopinionated.)  ;)

Best,
—Mike Weilgart
Vertical Sysadmin, Inc.
Reply all
Reply to author
Forward
0 new messages