[argyllcms] Re: error compiling Argyll 2.1.2

  • From: Tomas Sobota <tom@xxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 13 Aug 2020 17:40:08 +0200

Hi
I was a bit puzzled by Richard Hughes saying that he could not compile
Argyll on Fedora. So I decided to have a look at the problem. I never used
Fedora, but it's never too late to learn, so I installed a virtual Fedora
32 on my (real) Mint and attempted the installation of Argyll on a clean
machine. I wrote down all the steps, with the hope that my notes will be
helpful to other users and perhaps be included in a future QA or small
manual about building Argyll.
Tom
----------------------------------------------------------------------------------------------------------------------------------------
Brief instructions to build Argyll 2.1.3 beta on Fedora 32 Linux
(on other Linux distributions it should be similar, i.e. replacing
'dnf' by 'apt' or equivalent and taking into account the variation in the
names of the packages)
For testing this procedure a fresh virtual machine was generated
containing only the software that is installed by default

1 - install basic software: c compiler, make, yacc ...
# sudo dnf install gcc bzip2 make curl byacc

1.1 - install kernel loadable modules facility and kernel headers
# sudo dnf install dkms kernel-devel

1.2 - verify if the kernel headers correspond to the kernel installed
# uname -r
# sudo rpm -qa kernel-devel

1.3 - if not, update the kernel
# sudo dnf update kernel.*

1.4 and check again. the versions should be identical
# uname -r

2 jam building. the version used is the patched version downloaded
  from the ArgyllCMS site.

# cd ajam-2.5.2-1.3.3

2.1 some of the jam scripts are expected to be executable but are not

# chmod +x ./configure
# chmod +x ./builds/unix/configure
# chmod +x ./builds/unix/mkinstalldirs
# chmod +x ./yyacc

2.2 make and install
# make
# sudo make install

2.3 you can delete the jam installation folder now
# cd ..
# rm -r ajam-2.5.2-1.3.3

3 Argyll_V2.1.3_beta building

3.1 install necessary X11 libs

# sudo dnf install libX11-devel
# sudo dnf install libXinerama-devel
# sudo dnf install libXrandr-devel
# sudo dnf install libXxf86vm-devel
# sudo dnf install libXScrnSaver-devel
# sudo dnf install libXdmcp-devel
3.2 the next library is probably not necessary.
    but it does no harm. Install it if compilation
    gives errors
# sudo dnf install libXtst-devel

3.3 go to Argyll distribution, compile and install

# cd Argyll_V2.1.3_beta
# make
# make install

3.4 after the previous steps, the Argyll executables
    should be in Argyll_V2.1.3_beta/bin
    the user can leave them there or move them somewhere
    else (/usr/bin, /usr/local/bin ...)
    if left there, the $PATH should be adjusted so they can be found:
    # export PATH=/path/to/Argyll_V2.1.3_beta/bin:$PATH

Tom Sobota, Aug.2020

On Tue, Aug 11, 2020 at 2:10 PM Richard Hughes <hughsient@xxxxxxxxx> wrote:

On Tue, 11 Aug 2020 at 12:36, Graeme Gill <graeme@xxxxxxxxxxxxx> wrote:
Well, needless to say it compiles fine on all the systems I try it on

Do you have any kind of CI set up for commits? I can't believe there
is any kind of meaningful QA being done on Linux right now.

So I could
equally complain about OS changes needlessly breaking
application compiles...

Do you have a specific example? I ran coverity on the argyllcms code
base a few months ago and there were *thousands* of high priority
issues detected -- far too many to even review, let alone submit fixes
for. That's also the main reason it's not even available in RHEL.

[ Bottom line, that's why I make binary releases available. ]

Which is fine for color scientists, but I don't think we can pretend
it's possible to compile and ship it in linux distributions for
general usage anymore.

Richard.


Other related posts: