3 Replies Latest reply: Apr 27, 2010 11:56 PM by pterobyte
makdaddy8888 Level 1 (0 points)
-- Posted on 10.5 server forum and copied to 10.4 server forum

I too am having enormous difficulty.
I have read the article on how to install clamav 0.96 and 0.95.3 but still cannot get it to make >properly. I first thought it was because I was using xcode 2.4 so i downloaded 2.5 which has gcc >4.0.1 from apple but i get a 'checking for gcc bug PR28045 code' one problem after another


Firstly I HAVE read and (to the best of my knowledge) understood the tutorial on how to install clamav version 0.95.3 on PPC

This below make was configured with all the correct syntax required as per the tutorial

I have a PowerMac G5 Dual 2.3 running 10.4.11 server xcode 2.4 was installed and i managed to install 2.5 after downloading xcode from connect.apple.com (also very unintuitive) also managed to use the gcc 3.3 to make clamav 0.95.3

+server:/SourceCache/clamav-0.95.3 root# make+
+make all-recursive+
+Making all in libltdl+
+make all-am+
+make[3]: Nothing to be done for `all-am'.+
+Making all in libclamav+
+^[[Amake all-recursive+
+Making all in lzma+
+make[4]: Nothing to be done for `all'.+
+Making all in .+
+Making all in clamscan+
+make[2]: Nothing to be done for `all'.+
+Making all in clamd+
+make[2]: Nothing to be done for `all'.+
+Making all in clamdscan+
+make[2]: Nothing to be done for `all'.+
+Making all in freshclam+
+make[2]: Nothing to be done for `all'.+
+Making all in sigtool+
+make[2]: Nothing to be done for `all'.+
+Making all in clamconf+
+make[2]: Nothing to be done for `all'.+
+Making all in database+
+make[2]: Nothing to be done for `all'.+
+Making all in docs+
+make[2]: Nothing to be done for `all'.+
+Making all in etc+
+make[2]: Nothing to be done for `all'.+
+Making all in clamav-milter+
+make[2]: Nothing to be done for `all'.+
+Making all in test+
+make[2]: Nothing to be done for `all'.+
+Making all in unit_tests+
+make[2]: Nothing to be done for `all'.+
+Making all in clamdtop+
+make[2]: Nothing to be done for `all'.+
+make[2]: Nothing to be done for `all-am'.+
+osxserver:/SourceCache/clamav-0.95.3 root# gcc -v+
+Reading specs from /usr/libexec/gcc/darwin/ppc/3.3/specs+
+Thread model: posix+
+gcc version 3.3 20030304 (Apple Computer, Inc. build 1819)+
+osxserver:/SourceCache/clamav-0.95.3 root#+

I think in my limited unix knowledge base, I removed everything with the word clam or clamav from the server. Check what happends when i do a find even. I thought/presumed that the building of clamav would re-install these files. SO i removed from usr/local/bin clamav-config, clambc,clamconf,clamdtop,clamscan,clamdscan

I did this as I could not understand when i had finished building and installing the files (a few days ago) I had issued a clamd and server said version 0.94.2 was still being used so I removed everything I could think of

+server:/ root# find . -name "clamd"+
./SourceCache/clamav-0.95.3/clamd
./SourceCache/clamav-0.95.3/clamd/.libs/clamd
./SourceCache/clamav-0.95.3/clamd/clamd
./usr/local/sbin/clamd
./Volumes/Backup/private/var/root/clamav-0.94.2/clamd
./Volumes/Backup/private/var/root/clamav-0.94.2/contrib/init/RedHat/clamd
./Volumes/Backup/private/var/root/clamav-0.94.2/contrib/init/Solaris10/clamd
./Volumes/Backup/private/var/root/clamav-0.94.2/contrib/init/SuSE/clamd
./Volumes/Backup/usr/local/sbin/clamd
./Volumes/Backup/usr/sbin/clamd

I do have a backup I can restore these specific files from.

Power Mac g5 Dual 2.3, Mac OS X (10.4.11)
  • makdaddy8888 Level 1 (0 points)
    *followon information using clamav version 0.96*

    gcc is 3.3

    first the patch

    server:/SourceCache/clamav-0.96 root# sudo patch -p1 <ppcpatch.txt
    patching file libclamav/c++/bytecode2llvm.cpp
    patching file libclamav/c++/llvm/lib/ExecutionEngine/JIT/JIT.cpp
    patching file libclamav/c++/llvm/lib/Target/PowerPC/PPCISelLowering.cpp

    then make configure

    +server:/SourceCache/clamav-0.96 root# *make./configure --prefix=/usr/local --mandir+*
    +r=/usr/local/share/man --sysconfdir=/private/etc/spam/clamav/new --enable-bigstac+
    +ck --with-user=clamav --enable-static --with-group=clamav --with-dbdir=/var/clama+
    +av --datadir=/var/clamav+
    +checking build system type... powerpc-apple-darwin8.11.1+
    +checking host system type... powerpc-apple-darwin8.11.1+
    +checking target system type... powerpc-apple-darwin8.11.1+
    +creating targ etc etc etc+

    ... removed a heap of code due to no errors then continued

    +checking for GCC atomic builtins... no+
    +configure: WARNING: LLVM will be built thread-unsafe because atomic builtins are missing+
    +checking for __dso_handle... yes+
    +checking whether llvm-gcc is sane... no+
    +checking for compiler -fvisibility-inlines-hidden option... yes+
    +configure: creating ./config.status+
    +config.status: creating include/llvm/Config/Targets.def+
    +config.status: creating include/llvm/Config/AsmPrinters.def+
    +config.status: creating include/llvm/Config/AsmParsers.def+
    +config.status: creating include/llvm/Config/Disassemblers.def+
    +config.status: creating Makefile.config+
    +config.status: creating llvm.spec+
    +config.status: creating docs/doxygen.cfg+
    +config.status: creating tools/llvmc/plugins/Base/Base.td+
    +config.status: creating tools/llvm-config/llvm-config.in+
    +config.status: creating include/llvm/Config/config.h+
    +config.status: creating include/llvm/System/DataTypes.h+
    +config.status: include/llvm/System/DataTypes.h is unchanged+
    +config.status: executing setup commands+
    +config.status: executing Makefile commands+
    +config.status: executing Makefile.common commands+
    +config.status: executing examples/Makefile commands+
    +./autoconf/install-sh: ./examples/Makefile does not exist.+
    +config.status: executing lib/Makefile commands+
    +config.status: executing runtime/Makefile commands+
    +./autoconf/install-sh: ./runtime/Makefile does not exist.+
    +config.status: executing test/Makefile commands+
    +config.status: executing test/Makefile.tests commands+
    +config.status: executing unittests/Makefile commands+
    +config.status: executing tools/Makefile commands+
    +config.status: executing utils/Makefile commands+
    +config.status: executing projects/Makefile commands+
    +./autoconf/install-sh: ./projects/Makefile does not exist.+
    +config.status: executing bindings/Makefile commands+
    +./autoconf/install-sh: ./bindings/Makefile does not exist.+
    +config.status: executing bindings/ocaml/Makefile.ocaml commands+
    +./autoconf/install-sh: ./bindings/ocaml/Makefile.ocaml does not exist.+
    +configure: creating ./config.status+
    +config.status: creating libltdl/Makefile+
    +config.status: creating clamscan/Makefile+
    +config.status: creating database/Makefile+
    +config.status: creating docs/Makefile+
    +config.status: creating clamd/Makefile+
    +config.status: creating clamdscan/Makefile+
    +config.status: creating clamav-milter/Makefile+
    +config.status: creating freshclam/Makefile+
    +config.status: creating sigtool/Makefile+
    +config.status: creating clamconf/Makefile+
    +config.status: creating etc/Makefile+
    +config.status: creating test/Makefile+
    +config.status: creating unit_tests/Makefile+
    +config.status: creating clamdtop/Makefile+
    +config.status: creating clambc/Makefile+
    +config.status: creating Makefile+
    +config.status: creating clamav-config+
    +config.status: creating libclamav.pc+
    +config.status: creating platform.h+
    +config.status: creating docs/man/clamav-milter.8+
    +config.status: creating docs/man/clamconf.1+
    +config.status: creating docs/man/clamd.8+
    +config.status: creating docs/man/clamd.conf.5+
    +config.status: creating docs/man/clamdscan.1+
    +config.status: creating docs/man/clamscan.1+
    +config.status: creating docs/man/freshclam.1+
    +config.status: creating docs/man/freshclam.conf.5+
    +config.status: creating docs/man/sigtool.1+
    +config.status: creating docs/man/clamdtop.1+
    +config.status: creating libclamav/Makefile+
    +config.status: creating clamav-config.h+
    +config.status: clamav-config.h is unchanged+
    +config.status: executing depfiles commands+
    +config.status: executing libtool commands+
    +configure: Summary of detected features follows+
    +OS : darwin8.11.1+
    +pthreads : yes ()+
    +configure: Summary of miscellaneous features+
    +check : no (auto)+
    +clamuko : yes+
    +fdpassing : 1+
    +IPv6 : yes+
    +configure: Summary of optional tools+
    +clamdtop : -lncurses (auto)+
    +milter : yes (disabled)+
    +configure: Summary of engine performance features)+
    +release mode: yes+
    +jit : yes (auto)+
    +mempool : yes+
    +configure: Summary of engine detection features+
    +autoit_ea06 : yes+
    +bzip2 : ok+
    +zlib : /usr+
    +unrar : yes+

    *then a final make*

    +make all-recursive+
    +Making all in libltdl+
    +make all-am+
    +CC dlopen.lo+
    +CCLD dlopen.la+
    +CC libltdlc_la-preopen.lo+
    +CC libltdlc_la-lt__alloc.lo+
    +CC libltdlc_la-lt_dlloader.lo+
    +CC libltdlc_la-lt_error.lo+
    +CC libltdlc_la-ltdl.lo+
    +CC libltdlc_la-slist.lo+
    +CCLD libltdlc.la+
    +Making all in libclamav+
    +make all-recursive+
    +Making all in c+++
    +make all-am+
    +CXX libclamavcxx_la-bytecode2llvm.lo+
    +ClamBCModule.h:8: warning: 'void ClamBCModule::stop(const char*, llvm::Function*, llvm::Instruction*)' defined but not used+
    +CXX libclamavcxx_la-ClamBCRTChecks.lo+
    +CXX MachineFunction.lo+
    +CXX Intercept.lo+
    +CXX JIT.lo+
    +CXX OProfileJITEventListener.lo+
    +CXX CommandLine.lo+
    +CXX GraphWriter.lo+
    +CXX ManagedStatic.lo+
    +CXX raw_ostream.lo+
    +CXXLD libllvmjit.la+
    +CXX ScheduleDAGPrinter.lo+
    +CXX SelectionDAGPrinter.lo+
    +CXX BasicBlockUtils.lo+
    +CXX BreakCriticalEdges.lo+
    +CXX DemoteRegToStack.lo+
    +CXX LCSSA.lo+
    +CXX Local.lo+
    +CXX LoopSimplify.lo+
    +CXX LowerInvoke.lo+
    +CXX LowerSwitch.lo+
    +CXX Mem2Reg.lo+
    +CXX PromoteMemoryToRegister.lo+
    +CXX SSAUpdater.lo+
    +CXX SimplifyCFG.lo+
    +CXX UnifyFunctionExitNodes.lo+
    +CXXLD libllvmcodegen.la+
    +CXX Alarm.lo+
    +CXX Atomic.lo+
    +CXX Disassembler.lo+
    +CXX DynamicLibrary.lo+
    +CXX Errno.lo+
    +CXX Host.lo+
    +CXX IncludeFile.lo+
    +CXX Memory.lo+
    +CXX Mutex.lo+
    +CXX Path.lo+
    +CXX Process.lo+
    +CXX Program.lo+
    +CXX RWMutex.lo+
    +CXX Signals.lo+
    +CXX ThreadLocal.lo+
    +CXX Threading.lo+
    +CXX TimeValue.lo+
    +CXXLD libllvmsystem.la+
    +CXX libllvmpowerpccodegen_la-PPCBranchSelector.lo+
    +CXX libllvmpowerpccodegen_la-PPCCodeEmitter.lo+
    +CXX libllvmpowerpccodegen_la-PPCHazardRecognizers.lo+
    +CXX libllvmpowerpccodegen_la-PPCISelDAGToDAG.lo+
    +CXX libllvmpowerpccodegen_la-PPCISelLowering.lo+
    +CXX libllvmpowerpccodegen_la-PPCInstrInfo.lo+
    +CXX libllvmpowerpccodegen_la-PPCJITInfo.lo+
    +CXX libllvmpowerpccodegen_la-PPCMCAsmInfo.lo+
    +CXX libllvmpowerpccodegen_la-PPCPredicates.lo+
    +CXX libllvmpowerpccodegen_la-PPCRegisterInfo.lo+
    +CXX libllvmpowerpccodegen_la-PPCSubtarget.lo+
    +CXX libllvmpowerpccodegen_la-PPCTargetMachine.lo+
    +CXX libllvmpowerpccodegen_la-PowerPCTargetInfo.lo+
    +CXXLD libllvmpowerpccodegen.la+
    +CXXLD libclamavcxx.la+
    +CC unrar15.lo+
    +CC unrar.lo+
    +CC unrar20.lo+
    +CC unrarppm.lo+
    +CC unrarvm.lo+
    +CC unrarcmd.lo+
    +CC unrarfilter.lo+
    +CC unrarhlp.lo+
    +CCLD libclamunrar.la+
    +warning: no debug map in executable (-arch ppc)+
    +CC unrar_iface.lo+
    +CCLD libclamunrar_iface.la+
    +warning: no debug map in executable (-arch ppc)+
    +CC libclamav_la-matcher-ac.lo+
    +CC libclamav_la-matcher-bm.lo+
    +CC libclamav_la-matcher.lo+
    +CC libclamav_la-others.lo+
    +CC libclamav_la-readdb.lo+
    +CC libclamav_la-cvd.lo+
    +CC libclamav_la-dsig.lo+
    +CC libclamav_la-scanners.lo+
    +CC libclamav_la-textdet.lo+
    +CC libclamav_la-filetypes.lo+
    +CC libclamav_la-rtf.lo+
    +CC libclamav_la-blob.lo+
    +CC libclamav_la-mbox.lo+
    +CC libclamav_la-message.lo+
    +CC libclamav_la-table.lo+
    +CC libclamav_la-text.lo+
    +CC libclamav_la-ole2_extract.lo+
    +CC libclamav_la-vba_extract.lo+
    +CC libclamav_la-msexpand.lo+
    +CC libclamav_la-pe.lo+
    +CC libclamav_la-pe_icons.lo+
    +pe_icons.c: In function `makebmp':+
    +pe_icons.c:646: warning: passing arg 1 of `cli_writeint32' from incompatible pointer type+
    +pe_icons.c:647: warning: passing arg 1 of `cli_writeint32' from incompatible pointer type+
    +pe_icons.c:649: warning: passing arg 1 of `cli_writeint32' from incompatible pointer type+
    +pe_icons.c:674: warning: passing arg 1 of `cli_writeint32' from incompatible pointer type+
    +pe_icons.c: In function `parseicon':+
    +pe_icons.c:1212: warning: passing arg 1 of `cli_readint32' from incompatible pointer type+
    +CC libclamav_la-disasm.lo+
    +CC libclamav_la-upx.lo+
    +CC libclamav_la-htmlnorm.lo+
    +CC libclamav_la-chmunpack.lo+
    +CC libclamav_la-rebuildpe.lo+
    +CC libclamav_la-petite.lo+
    +CC libclamav_la-wwunpack.lo+
    +CC libclamav_la-unsp.lo+
    +CC libclamav_la-aspack.lo+
    +CC libclamav_la-packlibs.lo+
    +CC libclamav_la-fsg.lo+
    +CC libclamav_la-mew.lo+
    +CC libclamav_la-upack.lo+
    +CC libclamav_la-line.lo+
    +CC libclamav_la-untar.lo+
    +CC libclamav_la-unzip.lo+
    +CC libclamav_la-inflate64.lo+
    +CC libclamav_la-special.lo+
    +CC libclamav_la-binhex.lo+
    +CC libclamav_la-is_tar.lo+
    +CC libclamav_la-tnef.lo+
    +CC libclamav_la-autoit.lo+
    +CC libclamav_la-unarj.lo+
    +CC libclamav_la-bzlib.lo+
    +CC libclamav_la-nulsft.lo+
    +CC libclamav_la-infblock.lo+
    +CC libclamav_la-pdf.lo+
    +CC libclamav_la-spin.lo+
    +CC libclamav_la-yc.lo+
    +CC libclamav_la-elf.lo+
    +CC libclamav_la-sis.lo+
    +CC libclamav_la-uuencode.lo+
    +CC libclamav_la-phishcheck.lo+
    +CC libclamav_la-phish_domaincheck_db.lo+
    +CC libclamav_la-phish_whitelist.lo+
    +CC libclamav_la-regex_list.lo+
    +CC libclamav_la-regex_suffix.lo+
    +CC libclamav_la-mspack.lo+
    +CC libclamav_la-cab.lo+
    +CC libclamav_la-entconv.lo+
    +entconv.c: In function `in_iconv_u16':+
    +entconv.c:732: warning: passing arg 2 of `libiconv' from incompatible pointer type+
    +CC libclamav_la-hashtab.lo+
    +CC libclamav_la-dconf.lo+
    +CC libclamav_la-LzmaDec.lo+
    +CC libclamav_la-lzma_iface.lo+
    +CC libclamav_la-7z.lo+
    +CC libclamav_la-7zFile.lo+
    +CC libclamav_la-7zStream.lo+
    +CC libclamav_la-7zCrc.lo+
    +CC libclamav_la-7zBuf.lo+
    +CC libclamav_la-Bcj2.lo+
    +CC libclamav_la-Bra.lo+
    +CC libclamav_la-Bra86.lo+
    +CC libclamav_la-7zIn.lo+
    +CC libclamav_la-7zDecode.lo+
    +CC libclamav_la-7zItem.lo+
    +CC libclamav_la-7zHeader.lo+
    +CC libclamav_la-7zExtract.lo+
    +CC libclamav_la-explode.lo+
    +CC libclamav_la-textnorm.lo+
    +CC libclamav_la-dlp.lo+
    +CC libclamav_la-js-norm.lo+
    +CC libclamav_la-uniq.lo+
    +GEN version.h.tmp+
    +GEN version.h+
    +CC libclamav_la-version.lo+
    +CC libclamav_la-mpool.lo+
    +CC libclamav_la-filtering.lo+
    +CC libclamav_la-fmap.lo+
    +CC libclamav_la-perflogging.lo+
    +CC libclamav_la-sha256.lo+
    +CC libclamav_la-bytecode.lo+
    +CC libclamav_la-bytecode_vm.lo+
    +CC libclamav_la-cpio.lo+
    +CC libclamav_la-macho.lo+
    +CC libclamav_la-ishield.lo+
    +CC libclamav_la-bytecode_api.lo+
    +CC libclamav_la-bytecode_api_decl.lo+
    +CC libclamav_la-cache.lo+
    +CC libclamav_la-bignum.lo+
    +CC libclamav_internal_utils_la-str.lo+
    +CC libclamav_internal_utils_la-md5.lo+
    +CC libclamav_internal_utils_la-others_common.lo+
    +CC libclamav_internal_utils_la-qsort.lo+
    +CC libclamav_internal_utils_la-strlcpy.lo+
    +CC libclamav_internal_utils_la-regcomp.lo+
    +CC libclamav_internal_utils_la-regerror.lo+
    +CC libclamav_internal_utils_la-regexec.lo+
    +CC libclamav_internal_utils_la-regfree.lo+
    +CCLD libclamav_internal_utils.la+
    +CCLD libclamav.la+
    +gcc: unrecognized option `-pthread'+
    +ld: Undefined symbols:+
    +__ZN9__gnu_cxx18__exchange_and_addEPVii+
    +__ZNSs4_Rep20_S_empty_rep_storageE+
    +___clzdi2+
    +__ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base+
    +__ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base+
    +__ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base+
    +__ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_+
    +__ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_+
    +_snprintf$LDBLStub+
    +___ctzdi2+
    +___popcountdi2+
    +__ZNSs4_Rep9_S_createEmmRKSaIcE+
    +___powidf2+
    +___powisf2+
    +__ZNSs14_M_replace_auxEmmmc+
    +__ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base+
    +___popcountsi2+
    +_printf$LDBLStub+
    +/usr/bin/libtool: internal link edit command failed+
    +make[4]: *** [libclamav.la] Error 1+
    +make[3]: *** [all-recursive] Error 1+
    +make[2]: *** [all] Error 2+
    +make[1]: *** [all-recursive] Error 1+
    +make: *** [all] Error 2+

    Message was edited by: makdaddy8888
  • makdaddy8888 Level 1 (0 points)
    after doing this

    sudo ln /usr/local/bin/clamscan /usr/bin/
    sudo ln /usr/local/bin/freshclam /usr/bin/

    i ran clamscan and freshclam and found that I am running
    +osxserver:~ root# freshclam+
    +ClamAV update process started at Wed Apr 28 13:43:36 2010+
    +WARNING: Your ClamAV installation is OUTDATED!+
    +WARNING: Local version: 0.95.3 Recommended version: 0.96+
    +DON'T PANIC! Read http://www.clamav.net/support/faq+
    +Downloading main-52.cdiff [100%]+
    +main.cld updated (version: 52, sigs: 704727, f-level: 44, builder: sven)+
    +WARNING: getfile: daily-9956.cdiff not found on remote server (IP: 116.240.207.20)+
    +WARNING: getpatch: Can't download daily-9956.cdiff from database.clamav.net+
    +Trying host database.clamav.net (117.104.160.194)...+
    +WARNING: getfile: daily-9956.cdiff not found on remote server (IP: 117.104.160.194)+
    +WARNING: getpatch: Can't download daily-9956.cdiff from database.clamav.net+
    +Trying host database.clamav.net (193.1.193.64)...+
    +WARNING: getfile: daily-9956.cdiff not found on remote server (IP: 193.1.193.64)+
    +WARNING: getpatch: Can't download daily-9956.cdiff from database.clamav.net+
    +WARNING: Incremental update failed, trying to download daily.cvd+
    +Trying host database.clamav.net (117.104.160.194)...+
    +Downloading daily.cvd [100%]+
    +daily.cvd updated (version: 10848, sigs: 54163, f-level: 51, builder: ccordes)+
    +WARNING: Your ClamAV installation is OUTDATED!+
    +WARNING: Current functionality level = 44, recommended = 51+
    +DON'T PANIC! Read http://www.clamav.net/support/faq+
    +Database updated (758890 signatures) from database.clamav.net (IP: 117.104.160.194)+
  • pterobyte Level 6 (10,930 points)
    No offense, but I strongly recommend you get somebody to help you. You are very close to messing up your server.

    That said:

    There is no need to remove the original version as it stays in a different directory (/usr), while the new version goes into /usr/local

    make./configure --prefix=/usr/local --mandirr=/usr/local/share/man --sysconfdir=/private/etc/spam/clamav/new --enable-bigstacck --with-user=clamav --enable-static --with-group=clamav --with-dbdir=/var/clamaav --datadir=/var/clamav

    Above is full of errors and does not correspond to the tutorial. Besides the typos in the config string, you have "make./configure...". The "make" command is needed only after you have successfully configured.

    sudo ln /usr/local/bin/clamscan /usr/bin/

    You need to undo the symlinks you created as this can cause issues