[64bit] Biber packaging questions
Ken Brown
kbrown@cornell.edu
Wed Jun 12 14:10:00 GMT 2013
I've succeeded, with help from the Biber developer, in building
biber.exe for 64bit Cygwin. This is supposed to be part of
texlive-collection-bibtexextra. Before I send an RFU, I have a few
packaging questions, for which I have to give some background.
Biber is written in perl and is then packed into a self-contained Perl
Archive biber.exe. The first time a user runs biber.exe, it unpacks all
necessary perl modules and all necessary DLLs (including the perl DLL)
into a subdirectory of /tmp. In this way biber.exe can run on any
Cygwin system, which doesn't even have to have perl installed. In order
to *build* biber.exe, however, perl and many perl modules are required.
The Biber developer builds the executables for several platforms
(including 32bit Cygwin). These executables are then included in the
TeX Live source. Since he does not currently build biber.exe for 64bit
Cygwin, I had to do this step. This required building the following
perl modules, which are not currently in the Cygwin distro:
perl-Business-ISBN
perl-Business-ISBN-Data
perl-Business-ISMN
perl-Business-ISSN
perl-Capture-Tiny
perl-Config-AutoConf
perl-Data-Compare
perl-Data-Diver
perl-Data-Dump
perl-Date-Simple
perl-Encode-EUCJPASCII
perl-Encode-HanExtra
perl-Encode-JIS2K
perl-ExtUtils-LibBuilder
perl-File-Find-Rule
perl-File-Slurp
perl-File-Slurp-Unicode
perl-IO-HTML
perl-IPC-Run3
perl-LWP-Protocol-https
perl-List-AllUtils
perl-List-MoreUtils
perl-Log-Log4perl
perl-MIME-Charset
perl-Mozilla-CA
perl-Number-Compare
perl-Readonly
perl-Readonly-XS
perl-Regexp-Common
perl-Text-BibTeX
perl-Text-Glob
perl-Tie-Cycle
perl-Unicode-Collate
perl-Unicode-GCString
perl-XML-LibXML-Simple
perl-XML-LibXSLT
Here are my questions:
1. Should these build prerequisites be added to the 64bit distro?
Otherwise it will be difficult for others to rebuild biber from source.
2. Biber requires perl 5.16 or later, so I did a quick and dirty build
of perl-5.16.3. By "quick and dirty" I mean that I simply took Yaakov's
perl.cygport and removed all patches that wouldn't apply. This is no
problem for *users* of biber.exe, since the latter includes the perl
DLL. But again it makes it difficult for others to replicate the build
until the official perl is updated. I have no idea what to do about this.
3. There is a completely different approach I could take. Namely, I
could simply package Biber as a perl module and forget about packing it
into a Perl Archive. If I do this, then users will need perl 5.16 or
later, as well as most or all of the perl modules listed above, so the
RFU will have to wait for a perl update; but that's probably not
serious. Would this be preferable? I'm not aware of any Linux distros
that do this, though someone did do it unofficially for Fedora:
http://www.linux.cz/pipermail/texlive/2012-August/000563.html
Ken
P.S. I'm copying Philip Kime, the Biber developer. He should probably
be kept in the CC for all replies.
More information about the Cygwin-apps
mailing list