Hi all,
  Some time back in December I started toying with installing Koha 3
on Windows XP using the Koha installer and Strawberry Perl 5.8.8.
Several have asked about it so here is the latest. The attached Open
Office document gives more grueling details.
  I made some modifications to Makefile.PL to detect the Win32
platform and went to work installing the required Perl modules. The
larger part of them installed fine via cpan, but a half dozen or so
did not. With Galen Charlton's help, I have made some progress. There
are five (six w/Schedule::AT) modules which are yet to be
compiled/installed on Win32 using Strawberry (versions may be bad due
to an old copy of Makefile.PL):

[Wed Jan 23 06:58:50 2008] Makefile.PL: Warning: prerequisite
DBD::mysql 3.0008 not found.
[Wed Jan 23 06:58:56 2008] Makefile.PL: Warning: prerequisite
MARC::File::XML 0.88 not found.
[Wed Jan 23 06:59:11 2008] Makefile.PL: Warning: prerequisite
XML::Dumper 0.81 not found.
[Wed Jan 23 06:59:11 2008] Makefile.PL: Warning: prerequisite
XML::LibXSLT 1.63 not found.
[Wed Jan 23 06:59:11 2008] Makefile.PL: Warning: prerequisite XML::RSS
1.31 not found.

I *think* that XML::Dumper and XML::RSS will install once XML::LibXSLT
is installed.

Zebra remains to be installed and tested.

The attachements to this email include:

1. A document detailing what I have accomplished so far.
2. Two files references in the document.

This is very much a side project for me as I really have no interest
in running Koha 3 on Win32 except to say I did it. :-)
Any help would be greatly appriciated. Maybe someone out there with a
lot of C++ experience can get libxslt working as this is the real
blocker right now.
Comments and criticisms welcome.

Regards,
Chris

PS. I plan on adding the included summary to the wiki so that anyone
can update it as work progresses.

-- 
Chris Nighswonger
Faculty Member
Network & Systems Director
Foundations Bible College & Seminary
www.foundations.edu
www.fbcradio.org

Attachment: Koha Perl Modules Status.odt
Description: application/vnd.oasis.opendocument.text

# $Id: Makefile.PL,v 1.24 2007/10/03 14:05:04 mike Exp $

# Use: perl Makefile.PL OPTIMIZE="-O0 -g -Wdeclaration-after-statement"
#  or: perl Makefile.PL PREFIX=/home/mike/universe

use 5.008;
use ExtUtils::MakeMaker;
use strict;

#my $yazver = `yaz-config --version`;
#my $yazinc = `yaz-config --cflags threads`;
#my $yazlibs = `yaz-config --libs threads`;
#if (!$yazver || !$yazinc || !$yazlibs) {
#    die qq[
#ERROR: Unable to call script: yaz-config
#If you are using a YAZ installation from the Debian package "yaz", you
#will also need to install "libyaz-dev" in order to build this module.
#];
#}

#chomp($yazver);
#check_version($yazver, "2.1.50");

# For Windows use
my $yazver = '2.1.50';
my $yazinc = '-Ic:\yaz\include';
my $yazlibs = 'c:\yaz\lib';

# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.
WriteMakefile(
    NAME              => 'Net::Z3950::ZOOM',
    VERSION_FROM      => 'lib/Net/Z3950/ZOOM.pm', # finds $VERSION
    PREREQ_PM         => { "MARC::Record" => 1.38 },
    ($] >= 5.005 ?     ## Add these new keywords supported since 5.005
      (ABSTRACT_FROM  => 'lib/Net/Z3950/ZOOM.pm', # retrieve abstract from 
module
       AUTHOR         => 'Mike Taylor <mike@>') : ()),
    LIBS              => [ $yazlibs ], # e.g., '-lm'
        EXTRALIBS                 => [ 'c:\yaz\lib\yaz.lib' ],  
    DEFINE            => '', # e.g., '-DHAVE_SOMETHING'
        # Insert -I. if you add *.h files later:
    INC               => $yazinc, # e.g., '-I/usr/include/other'
        # Un-comment this if you add C files to link with later:
    # OBJECT            => '$(O_FILES)', # link all the C files too
# Use this to test for illegal code that GCC stupidly permits by default:
#   OPTIMIZE          => "-Wdeclaration-after-statement -g -O0",
    EXE_FILES    => [ 'samples/zoom/zselect' ],
);


sub check_version {
    my($got, $want) = @_;

    my($gmajor, $gminor, $gtrivial) = ($got =~ /(\d+)\.(\d+)\.(\d+)/);
    my($wmajor, $wminor, $wtrivial) = ($want =~ /(\d+)\.(\d+)\.(\d+)/);
    if (($gmajor < $wmajor) ||
        ($gmajor == $wmajor && $gminor < $wminor) ||
        ($gmajor == $wmajor && $gminor == $wminor && $gtrivial < $wtrivial)) {
        print <<__EOT__;
*** ERROR!
ZOOM-Perl requires at least version $want of YAZ,
but you only have version $got.
__EOT__
        exit 1;
    }
}
EXPORTS
xslAddCall
xslDebugStatus DATA
xslDropCall
xslHandleDebugger
xsltAddKey
xsltAddStackElemList
xsltAddTemplate
xsltAllocateExtra
xsltAllocateExtraCtxt
xsltApplyAttributeSet
xsltApplyImports
xsltApplyOneTemplate
xsltApplyStripSpaces
xsltApplyStylesheet
xsltApplyStylesheetUser
xsltApplyTemplates
xsltAttrListTemplateProcess
xsltAttrTemplateProcess
xsltAttrTemplateValueProcess
xsltAttrTemplateValueProcessNode
xsltAttribute
xsltCalibrateAdjust
xsltCallTemplate
xsltCheckExtPrefix
xsltCheckRead
xsltCheckWrite
xsltChoose
xsltCleanupGlobals
xsltCleanupTemplates
xsltComment
xsltCompileAttr
xsltCompilePattern
xsltComputeSortResult
xsltCopy
xsltCopyNamespace
xsltCopyNamespaceList
xsltCopyOf
xsltCopyTextString
xsltCreateRVT
xsltDebug
xsltDebugDumpExtensions
xsltDebugGetDefaultTrace
xsltDebugSetDefaultTrace
xsltDecimalFormatGetByName
xsltDefaultSortFunction
xsltDoSortFunction
xsltDocDefaultLoader DATA
xsltDocumentComp
xsltDocumentElem
xsltDocumentFunction
xsltDocumentSortFunction
xsltElement
xsltElementAvailableFunction
xsltEngineVersion DATA
xsltEvalAVT
xsltEvalAttrValueTemplate
xsltEvalGlobalVariables
xsltEvalOneUserParam
xsltEvalStaticAttrValueTemplate
xsltEvalTemplateString
xsltEvalUserParams
xsltEvalXPathPredicate
xsltEvalXPathString
xsltEvalXPathStringNs
xsltExtElementLookup
xsltExtModuleElementLookup
xsltExtModuleElementPreComputeLookup
xsltExtModuleFunctionLookup
xsltExtModuleTopLevelLookup
xsltExtensionInstructionResultFinalize
xsltExtensionInstructionResultRegister
xsltFindDocument
xsltFindElemSpaceHandling
xsltFindTemplate
xsltForEach
xsltFormatNumberConversion
xsltFormatNumberFunction
xsltFreeAVTList
xsltFreeAttributeSetsHashes
xsltFreeCompMatchList
xsltFreeCtxtExts
xsltFreeDocumentKeys
xsltFreeDocuments
xsltFreeExts
xsltFreeGlobalVariables
xsltFreeKeys
xsltFreeNamespaceAliasHashes
xsltFreeRVTs
xsltFreeSecurityPrefs
xsltFreeStackElemList
xsltFreeStyleDocuments
xsltFreeStylePreComps
xsltFreeStylesheet
xsltFreeTemplateHashes
xsltFreeTransformContext
xsltFunctionAvailableFunction
xsltFunctionNodeSet
xsltGenerateIdFunction
xsltGenericDebug DATA
xsltGenericDebugContext DATA
xsltGenericError DATA
xsltGenericErrorContext DATA
xsltGetCNsProp
xsltGetDebuggerStatus
xsltGetDefaultSecurityPrefs
xsltGetExtData
xsltGetExtInfo
xsltGetKey
xsltGetNamespace
xsltGetNsProp
xsltGetPlainNamespace
xsltGetProfileInformation
xsltGetQNameURI
xsltGetQNameURI2
xsltGetSecurityPrefs
xsltGetSpecialNamespace
xsltGetTemplate
xsltGetUTF8Char
xsltGetXIncludeDefault
xsltIf
xsltInit
xsltInitCtxtExts
xsltInitCtxtKey
xsltInitCtxtKeys
xsltInitElemPreComp
xsltIsBlank
xsltKeyFunction
xsltLibxmlVersion DATA
xsltLibxsltVersion DATA
xsltLoadDocument
xsltLoadStyleDocument
xsltLoadStylesheetPI
xsltLocalVariablePop
xsltLocalVariablePush
xsltMaxDepth DATA
xsltMessage
xsltNamespaceAlias
xsltNeedElemSpaceHandling
xsltNewDocument
xsltNewElemPreComp
xsltNewSecurityPrefs
xsltNewStyleDocument
xsltNewStylesheet
xsltNewTransformContext
xsltNextImport
xsltNormalizeCompSteps
xsltNumber
xsltNumberFormat
xsltParseGlobalParam
xsltParseGlobalVariable
xsltParseStylesheetAttributeSet
xsltParseStylesheetCallerParam
xsltParseStylesheetDoc
xsltParseStylesheetFile
xsltParseStylesheetImport
xsltParseStylesheetImportedDoc
xsltParseStylesheetInclude
xsltParseStylesheetOutput
xsltParseStylesheetParam
xsltParseStylesheetProcess
xsltParseStylesheetVariable
xsltParseTemplateContent
xsltPreComputeExtModuleElement
xsltPrintErrorContext
xsltProcessingInstruction
xsltProfileStylesheet
xsltQuoteOneUserParam
xsltQuoteUserParams
xsltRegisterAllElement
xsltRegisterAllExtras
xsltRegisterAllFunctions
xsltRegisterExtElement
xsltRegisterExtFunction
xsltRegisterExtModule
xsltRegisterExtModuleElement
xsltRegisterExtModuleFull
xsltRegisterExtModuleFunction
xsltRegisterExtModuleTopLevel
xsltRegisterExtPrefix
xsltRegisterExtras
xsltRegisterLocalRVT
xsltRegisterPersistRVT
xsltRegisterTestModule
xsltRegisterTmpRVT
xsltReleaseRVT
xsltResolveStylesheetAttributeSet
xsltRunStylesheet
xsltRunStylesheetUser
xsltSaveProfiling
xsltSaveResultTo
xsltSaveResultToFd
xsltSaveResultToFile
xsltSaveResultToFilename
xsltSaveResultToString
xsltSecurityAllow
xsltSecurityForbid
xsltSetCtxtParseOptions
xsltSetCtxtSecurityPrefs
xsltSetCtxtSortFunc
xsltSetDebuggerCallbacks
xsltSetDebuggerStatus
xsltSetDefaultSecurityPrefs
xsltSetGenericDebugFunc
xsltSetGenericErrorFunc
xsltSetLoaderFunc
xsltSetSecurityPrefs
xsltSetSortFunc
xsltSetTransformErrorFunc
xsltSetXIncludeDefault
xsltShutdownCtxtExts
xsltShutdownExts
xsltSort
xsltSplitQName
xsltStyleGetExtData
xsltStylePreCompute
xsltSystemPropertyFunction
xsltTemplateProcess
xsltTestCompMatchList
xsltText
xsltTimestamp
xsltTransformError
xsltUninit
xsltUnparsedEntityURIFunction
xsltUnregisterExtModule
xsltUnregisterExtModuleElement
xsltUnregisterExtModuleFunction
xsltUnregisterExtModuleTopLevel
xsltValueOf
xsltVariableLookup
xsltXPathCompile
xsltXPathFunctionLookup
xsltXPathGetTransformContext
xsltXPathVariableLookup
_______________________________________________
Koha-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/koha-devel

Reply via email to