Hi,
On Wed, 29 Dec 2021, at 3:24 AM, 03.fascia.basic via Info wrote:
However, when I then runmake
I get an error aboutdetect_handledata_r
being undefined. This looks like a chardet issue, so I'm now trying to build all the cyruslibs as I'm assuming that'll be more up to date that what libchardet-dev installed.
You don't necessarily need all the things cyruslibs provides, but just installing them all is a sensible starting point. I don't install all of them myself, though I can't remember why, nor how I chose which. You can always jettison the ones you don't need later, once you better understand your needs.
Does that sound reasonable? It looks like there are some other issues with compiling some of the cyruslibs, so I wanted to check before I start playing whack-a-mole with dependencies etc.
Which ones are giving you problems?
Assuming I manage to get things compiled, is there a nice way to move the binaries etc to a separate server? I'd prefer to have a way to build on one server and install on another. (Ideally I'd like to create a deb file but I feel that might be a stretch.)
Cyrus is sensitive to architecture, OS version, library versions, etc. I would not expect to just be able to copy the binaries around between servers, unless those servers were the same hardware, same OS version, had the same versions of the same 3rd-party libraries installed, etc.
Also, I do not believe it's possible to cross-compile Cyrus -- I mean, I've never tried, but if you told me "it breaks when I...", this is one of the things where my response would be "then don't do that". It doesn't sound like you're planning on cross-compiling, but I thought I'd mention anyway. :)
In my mind, the only sane and safe options here are:
* make a deb package, and let dpkg/apt protect you from installing a build onto a system its not compatible with; or
* just build it on the server you intend to run it on
If I was starting out, I would build it fresh on each server it'll be running on, probably with some naive wrapper script so I don't have to remember/type the same configure arguments over and over, etc. I would think about moving to packages later, once I really understood exactly what I wanted them to do for me.
Please note that I'm a developer, not sysadmin or ops, so maybe someone with relevant experience can chime in to fill in the gaps?
Cheers,
ellie