Hey All, I'm having trouble compiling either Algorithm::SVM or Algorithm::SVMLight from CPAN. I have pasted the error below. If this is not the correct list for this type of discussion please direct me elsewhere. My system is Linux Fedora 9 kernel: 2.6.24.7-1.rt3.2.fc9.ccrmart I think there may be a simple solution to the problem.
Any help is greatly appreciated. I used the command: perl -MCPAN -e 'install Algorithm::SVM' (I have also tried downloading and compiling the package manually with the same result) OUTPUT: Checking if your kit is complete... Looks good Writing Makefile for Algorithm::SVM cp lib/Algorithm/SVM/DataSet.pm blib/lib/Algorithm/SVM/DataSet.pm cp lib/Algorithm/SVM.pm blib/lib/Algorithm/SVM.pm AutoSplitting blib/lib/Algorithm/SVM.pm (blib/lib/auto/Algorithm/SVM) /usr/bin/perl /usr/lib/perl5/5.10.0/ExtUtils/xsubpp -C++ -noprototypes -typemap /usr/lib/perl5/5.10.0/ExtUtils/typemap -typemap typemap SVM.xs > SVM.xsc && mv SVM.xsc SVM.c g++ -c -Wall -O3 -DVERSION=\"0.13\" -DXS_VERSION=\"0.13\" -fPIC "-I/usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi/CORE" SVM.c SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__new_dataset(PerlInterpreter*, CV*)’: SVM.c:49: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__getLabel(PerlInterpreter*, CV*)’: SVM.c:74: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__setLabel(PerlInterpreter*, CV*)’: SVM.c:105: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__getAttribute(PerlInterpreter*, CV*)’: SVM.c:134: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__setAttribute(PerlInterpreter*, CV*)’: SVM.c:166: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__getIndexAt(PerlInterpreter*, CV*)’: SVM.c:196: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__getValueAt(PerlInterpreter*, CV*)’: SVM.c:228: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet__getMaxI(PerlInterpreter*, CV*)’: SVM.c:260: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__DataSet_DESTROY(PerlInterpreter*, CV*)’: SVM.c:291: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__new_svm(PerlInterpreter*, CV*)’: SVM.c:318: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__addDataSet(PerlInterpreter*, CV*)’: SVM.c:350: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__clearDataSet(PerlInterpreter*, CV*)’: SVM.c:386: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__train(PerlInterpreter*, CV*)’: SVM.c:414: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__crossValidate(PerlInterpreter*, CV*)’: SVM.c:446: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__predict_value(PerlInterpreter*, CV*)’: SVM.c:478: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__predict(PerlInterpreter*, CV*)’: SVM.c:517: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__saveModel(PerlInterpreter*, CV*)’: SVM.c:556: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__loadModel(PerlInterpreter*, CV*)’: SVM.c:588: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getNRClass(PerlInterpreter*, CV*)’: SVM.c:620: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getLabels(PerlInterpreter*, CV*)’: SVM.c:651: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getSVRProbability(PerlInterpreter*, CV*)’: SVM.c:692: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__checkProbabilityModel(PerlInterpreter*, CV*)’: SVM.c:723: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setSVMType(PerlInterpreter*, CV*)’: SVM.c:754: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getSVMType(PerlInterpreter*, CV*)’: SVM.c:783: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setKernelType(PerlInterpreter*, CV*)’: SVM.c:814: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getKernelType(PerlInterpreter*, CV*)’: SVM.c:843: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setGamma(PerlInterpreter*, CV*)’: SVM.c:874: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getGamma(PerlInterpreter*, CV*)’: SVM.c:903: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setDegree(PerlInterpreter*, CV*)’: SVM.c:934: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getDegree(PerlInterpreter*, CV*)’: SVM.c:963: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setCoef0(PerlInterpreter*, CV*)’: SVM.c:994: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getCoef0(PerlInterpreter*, CV*)’: SVM.c:1023: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setC(PerlInterpreter*, CV*)’: SVM.c:1054: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getC(PerlInterpreter*, CV*)’: SVM.c:1083: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setNu(PerlInterpreter*, CV*)’: SVM.c:1114: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getNu(PerlInterpreter*, CV*)’: SVM.c:1143: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__setEpsilon(PerlInterpreter*, CV*)’: SVM.c:1174: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM__getEpsilon(PerlInterpreter*, CV*)’: SVM.c:1203: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void XS_Algorithm__SVM_DESTROY(PerlInterpreter*, CV*)’: SVM.c:1234: warning: unused variable ‘Perl___notused’ SVM.c: In function ‘void boot_Algorithm__SVM(PerlInterpreter*, CV*)’: SVM.c:1267: warning: deprecated conversion from string constant to ‘char*’ SVM.c:1263: warning: unused variable ‘Perl___notused’ g++ -c -Wall -O3 -DVERSION=\"0.13\" -DXS_VERSION=\"0.13\" -fPIC "-I/usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi/CORE" libsvm.cpp g++ -c -Wall -O3 -DVERSION=\"0.13\" -DXS_VERSION=\"0.13\" -fPIC "-I/usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi/CORE" bindings.cpp bindings.cpp: In constructor ‘DataSet::DataSet(double)’: bindings.cpp:22: error: ‘malloc’ was not declared in this scope bindings.cpp: In destructor ‘DataSet::~DataSet()’: bindings.cpp:33: error: ‘free’ was not declared in this scope bindings.cpp: In member function ‘void DataSet::realign(svm_node*)’: bindings.cpp:39: error: ‘memcpy’ was not declared in this scope bindings.cpp:40: error: ‘free’ was not declared in this scope bindings.cpp: In member function ‘void DataSet::setAttribute(int, double)’: bindings.cpp:48: error: ‘malloc’ was not declared in this scope bindings.cpp:50: error: ‘memcpy’ was not declared in this scope bindings.cpp:86: error: ‘realloc’ was not declared in this scope bindings.cpp: In member function ‘void SVM::free_x_space()’: bindings.cpp:160: error: ‘free’ was not declared in this scope bindings.cpp: In member function ‘int SVM::train(int)’: bindings.cpp:180: error: ‘free’ was not declared in this scope bindings.cpp:186: error: ‘malloc’ was not declared in this scope bindings.cpp:191: error: ‘malloc’ was not declared in this scope bindings.cpp:195: error: ‘free’ was not declared in this scope bindings.cpp:196: error: ‘free’ was not declared in this scope bindings.cpp:197: error: ‘free’ was not declared in this scope bindings.cpp:203: error: ‘free’ was not declared in this scope bindings.cpp:219: error: ‘free’ was not declared in this scope bindings.cpp: In member function ‘double SVM::crossValidate(int)’: bindings.cpp:308: error: ‘rand’ was not declared in this scope bindings.cpp:331: error: ‘malloc’ was not declared in this scope bindings.cpp:377: error: ‘free’ was not declared in this scope bindings.cpp: In destructor ‘SVM::~SVM()’: bindings.cpp:427: error: ‘free’ was not declared in this scope make: *** [bindings.o] Error 1 LAIRDM/Algorithm-SVM-0.13.tar.gz /usr/bin/make -- NOT OK Running make test Can't test without successful make Running make install Make had returned bad status, install seems impossible