Addendum:
    For the latest versions of GiP & GFV, you may wish to add the following to the cpan command in stage 4:
        Mojolicious
        LWP::Protocol::socks
        Tie::IxHash


On 27/12/2017 12:57, MacFH - C E Macfarlane wrote:
It has been said in these august journals that it is not possible to run the most recent editions of GiP on Windows XP, but actually this is not true, I have managed to get v3.07 to work on XP.  It has just finished downloading the first of this year's Royal Christmas Lectures.  For those interested, I explain how I accomplished this below, everyone else can safely ignore ...

The instructions that follow assume that the Strawberry Perl supplied with GiP no longer supports XP, but if this is incorrect, the following can be simplified.  They also supply some extra modules for GetFlashVideos and the W3C web page validator, although, as I write, GFV is not working, probably because of the recent necessity of signing in, and a critical module for the latter is missing as I have been unable to find anyone that has installed it successfully on any Windows system.  If this seems illogical, the logic is simply that I use a single list of Perl modules I need to install for both Linux and Windows systems!

1)    If you don't already have GiP and its associated helper programs such as FFMPEG and AtomicParsley installed, begin by installing the latest version.

2)    Remove all previous versions of Perl, including any version of Strawberry Perl installed in Step 1 by going into Control Panel, Add & Remove Programs, and uninstalling them.  If either of the following or similar directories remain, delete them manually in Explorer:
    C:\Perl
    C:\Program Files\Perl

3)    Install the last or nearly so version of Active Perl that will run on XP, I used ...
        ActivePerl-5.20.2.2002-MSWin32-x86-64int-299195.msi
... which I downloaded a while ago, but could no longer find on the Active Perl site when I checked for this documentation.  I can make it available on request.

IMPORTANT #1:    Perl should be installed into a directory without spaces in its path, so NOT ...
    C:\Program Files\Perl
... but alternative suggestions are ...
    C:\Perl (the default)
... or if you prefer to keep your root directory clean ...
    C:\Programs\Perl
... which is where I installed it, having alrady installed GiP to ...
    C:\Programs\GetIPlayer

IMPORTANT #2:    Perl should be added to the system path, so choose this option during the setup routine.  If you also have MinGW32 installed, ensure that the Perl directories precede the MinGW32 directories in the path.  To check this, open a command console and give the command ...
    perl --version
... which should give you the same version number that you've just installed.

4)    Install the necessary modules which, including the extras described above, are ...
        Authen::SASL
        Compress::Zlib
        Crypt::Rijndael
        Data::AMF
        LWP
        Module::Find
        MP3::Info
        MP3::Tag
        Net::SMTP::SSL
        Net::SMTP::TLS
        Net::SMTP::TLS::ButMaintained
        Term::ProgressBar
        WWW::Mechanize
        XML::Simple
... but besides themselves some involve installing other prerequisite dependencies, and you can just about guarantee that the following three required modules will cause problems ...
        Data::AMF
        Encode::JIS2K
        XML::LibXML
... but never mind them for the moment.  Fire away by going into a command prompt with Perl on the path and running the following command, which should be entered as a single command line without any embedded carriage returns:         cpan CPAN Authen::SASL Compress::Zlib Crypt::Rijndael LWP Module::Find MP3::Info MP3::Tag Net::SMTP::SSL Net::SMTP::TLS Net::SMTP::TLS::ButMaintained Term::ProgressBar WWW::Mechanize XML::Simple Data::AMF

If you do not already have a developement system installed, the above installations will automatically be preceded by running a MinGW + DMake installation.  Some time will pass, with stuff scrolling past, mostly in green and white, but the modules that error will produce some red; ignore these for the moment and let the entire command complete, errors or no.  Then we can deal with the problems, one by one.

5)    Data::AMF is the easiest, as it only errors in the test phase, so give the command ...
    cpan -T Data::AMF
... to install it without running the test phase.

6)    Next easiest is Encode::JIS2K, which needs an edit to its Perl make file, but, to see the wood for the trees, clear away the previous installation files, both those that succeeded and those that failed, by in Explorer deleting all the files and subdirectories, but leaving the 'build' folder itself, from ...
    <path>\Perl\cpan\build
... so in my example ...
    C:\Programs\Perl\cpan\build

Now run ...
    cpan Encode::JIS2K
... which will fail, but will have created a new subfolder of the above 'build' directory.  Give the command
    pushd <above new subfolder>
... to change to this new subfolder, and then ...
    notepad Makefile.PL
... overwriting line 35 to read ...
    $enc2xs = $enc2xs_fpath if (-x $enc2xs_fpath || -x "$enc2xs_fpath.bat");
... saving the change, and exiting.  Now give the commands ...
        perl Makefile.PL
        dmake
        dmake test
        dmake install
        popd
... all of which should run correctly, leaving you back in your original directory, wherever that was.  You can now delete the above new build subfolder, as it is no longer needed.

XML::LibXML is far more tricky, but nevertheless can be done; hold on tight and follow me.  There are four main difficulties:

    :-(    Before trying to install it via cpan in the normal way, there are some supporting programs that must be installed. These are available from (note that despite the parent folder being called '64bit', this link has BOTH 32-bit x86 and 64-bit x86_64 files in the same folder, choose the appropriate set for your version of XP) ...
        1)    Either 32-bit ...
ftp://ftp.zlatkovic.com/libxml/64bit/iconv-1.14-win32-x86.7z
ftp://ftp.zlatkovic.com/libxml/64bit/libxml2-2.9.3-win32-x86.7z
ftp://ftp.zlatkovic.com/libxml/64bit/zlib-1.2.8-win32-x86.7z
        Or 64-bit ...
ftp://ftp.zlatkovic.com/libxml/64bit/iconv-1.14-win32-x86_64.7z
ftp://ftp.zlatkovic.com/libxml/64bit/libxml2-2.9.3-win32-x86_64.7z
ftp://ftp.zlatkovic.com/libxml/64bit/zlib-1.2.8-win32-x86_64.7z
        2)    Either 32 bit ...
http://ftp.acc.umu.se/pub/gnome/binaries/win32/dependencies/gettext-0.18.1.1.tar.gz
        Or 64-bit ...
http://ftp.gnome.org/pub/gnome/binaries/win64/dependencies/gettext-tools-dev_0.18.1.1-2_win64.zip

    All the contents of these zips should be extracted preserving their sub-directory structure to the following folder ...
        <path>\Perl\site
    ... so in my example ...
        C:\Programs\Perl\site
    ... so you should end up with at least ...
        <path>\Perl\site\bin
        <path>\Perl\site\include
        <path>\Perl\site\lib
    ... containing, as well as many files that were there before, the contents of the above zips.

    :-(    Once these prerequisite have been installed, the are three further 'tweaks' required, two at this stage, one later.
        Tweak #1:    Rename libz.a to zlib.a
            REN <path>\Perl\site\lib\libz.a zlib.a
        Tweak #2:    Under <path>\Perl\site\include, move the libxml folder up one level:             MOVE <path>\Perl\site\include\libxml2\libxml <path>\Perl\site\include
            RD <path>\Perl\site\include\libxml2

Now we can try building XML::LibXML in the normal way, but it will still fail the first two times:
    cpan XML::LibXML
Once it fails for the first time, as before change to the newly created sub-folder of <path>\Perl\cpan\build, and then give a more informative first build command, remembering to change <path> to your Perl installation directory ...
        pushd <above new subfolder>
        perl Makefile.PL INC=-I<path>\Perl\site\include LIBS=-L<path>\Perl\site\lib
... but it still fails a second time at the end.  Next it's time for ...
    :-(
        Tweak #3:    Neuter the static libXML library by renaming it:
            REN <path>\Perl\site\lib\libxml2.a libxml2.a.not

Now the build process should complete manually succesfully ...
        perl Makefile.PL INC=-I<path>\Perl\site\include LIBS=-L<path>\Perl\site\lib
        dmake
        dmake test
        dmake install
        popd
... again leaving you back in your original directory, wherever that was.  You can now delete the above new build subfolder, as it is no longer needed.

As a final check, resubmitting the original mega cpan installation command from section 4) should quickly give a list of all the prerequisites with 'is up to date' alongside each.

Now, as long as <path>\Perl and <path>\Perl\site\bin are on your system path, you should be good to go.

I acknowledge the following sources for help with the above:
    Encode::JIS2K https://rt.cpan.org/Public/Bug/Display.html?id=110069
    XML::LibXML https://www.opswat.com/blog/installing-libxml-perl-module-microsoft-windows

HTH,
Regards.


_______________________________________________
get_iplayer mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/get_iplayer


_______________________________________________
get_iplayer mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/get_iplayer

Reply via email to