Hi Peter,

Some others have encountered the same sort of errors building ClamAV with newer 
versions of gcc/g++.  We are aware of the issue and a fix will be on the way.

https://bugzilla.clamav.net/show_bug.cgi?id=12026

Regards,
Micah

Micah Snyder
Software Engineer
Talos
Cisco Systems, Inc.



On Feb 10, 2018, at 5:00 PM, Peter Wiehe 
<peter.wie...@gmail.com<mailto:peter.wie...@gmail.com>> wrote:

I am trying to compile the sourcecode of clamav 0.99.3.
I use "gcc (Ubuntu 6.3.0-12ubuntu2) 6.3.0 20170406" on Kubuntu 17.04 64bit.

I get the following output when entering "make":
-------------------------------------------
make  all-recursive
make[1]: Entering directory '/home/peter/Schreibtisch/clamav-0.99.3'
Making all in libltdl
make[2]: Entering directory '/home/peter/Schreibtisch/clamav-0.99.3/libltdl'
make  all-am
make[3]: Entering directory '/home/peter/Schreibtisch/clamav-0.99.3/libltdl'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/Schreibtisch/clamav-0.99.3/libltdl'
make[2]: Leaving directory '/home/peter/Schreibtisch/clamav-0.99.3/libltdl'
Making all in libclamav
make[2]: Entering directory '/home/peter/Schreibtisch/clamav-0.99.3/libclamav'
make  all-recursive
make[3]: Entering directory '/home/peter/Schreibtisch/clamav-0.99.3/libclamav'
Making all in c++
make[4]: Entering directory
'/home/peter/Schreibtisch/clamav-0.99.3/libclamav/c++'
make  all-am
make[5]: Entering directory
'/home/peter/Schreibtisch/clamav-0.99.3/libclamav/c++'
 CXX    libclamavcxx_la-bytecode2llvm.lo
In file included from bytecode2llvm.cpp:39:0:
./llvm/include/llvm/ADT/BitVector.h: In member function ‘int
llvm::BitVector::find_next(unsigned int) const’:
./llvm/include/llvm/ADT/BitVector.h:161:20: warning: left shift of
negative value [-Wshift-negative-value]
    Copy &= ~0L << BitPos;
                   ^~~~~~
./llvm/include/llvm/ADT/BitVector.h: In member function ‘void
llvm::BitVector::set_unused_bits(bool)’:
./llvm/include/llvm/ADT/BitVector.h:376:37: warning: left shift of
negative value [-Wshift-negative-value]
      Bits[UsedWords-1] &= ~(~0L << ExtraBits);
                                    ^~~~~~~~~
In file included from ./llvm/include/llvm/Support/Allocator.h:17:0,
                from ./llvm/include/llvm/ADT/StringMap.h:18,
                from bytecode2llvm.cpp:41:
./llvm/include/llvm/Support/AlignOf.h: At global scope:
./llvm/include/llvm/Support/AlignOf.h:57:24: error: expected
unqualified-id before ‘alignof’
static inline unsigned alignof() { return AlignOf<T>::Alignment; }
                       ^~~~~~~
In file included from ./llvm/include/llvm/ADT/StringMap.h:18:0,
                from bytecode2llvm.cpp:41:
./llvm/include/llvm/Support/Allocator.h: In member function ‘void
llvm::SpecificBumpPtrAllocator<T>::DestroyAll()’:
./llvm/include/llvm/Support/Allocator.h:204:46: error: expected
primary-expression before ‘<’ token
        Ptr = Allocator.AlignPtr(Ptr, alignof<T>());
                                             ^
./llvm/include/llvm/Support/Allocator.h:204:39: warning: ISO C++ does
not allow ‘alignof’ with a non-type [-Wpedantic]
        Ptr = Allocator.AlignPtr(Ptr, alignof<T>());
                                      ^~~~~~~
./llvm/include/llvm/Support/Allocator.h:204:48: error: expected
primary-expression before ‘>’ token
        Ptr = Allocator.AlignPtr(Ptr, alignof<T>());
                                               ^
./llvm/include/llvm/Support/Allocator.h:204:50: error: expected
primary-expression before ‘)’ token
        Ptr = Allocator.AlignPtr(Ptr, alignof<T>());
                                                 ^
In file included from bytecode2llvm.cpp:41:0:
./llvm/include/llvm/ADT/StringMap.h: In static member function ‘static
llvm::StringMapEntry<ValueTy>*
llvm::StringMapEntry<ValueTy>::Create(const char*, const char*,
AllocatorTy&, InitType)’:
./llvm/include/llvm/ADT/StringMap.h:170:33: error: expected
primary-expression before ‘<’ token
    unsigned Alignment = alignof<StringMapEntry>();
                                ^
./llvm/include/llvm/ADT/StringMap.h:170:26: warning: ISO C++ does not
allow ‘alignof’ with a non-type [-Wpedantic]
    unsigned Alignment = alignof<StringMapEntry>();
                         ^~~~~~~
./llvm/include/llvm/ADT/StringMap.h:170:48: error: expected
primary-expression before ‘>’ token
    unsigned Alignment = alignof<StringMapEntry>();
                                               ^
./llvm/include/llvm/ADT/StringMap.h:170:50: error: expected
primary-expression before ‘)’ token
    unsigned Alignment = alignof<StringMapEntry>();
                                                 ^
In file included from bytecode2llvm.cpp:69:0:
./llvm/include/llvm/Support/CommandLine.h: In member function ‘void
llvm::cl::alias::done()’:
./llvm/include/llvm/Support/CommandLine.h:1326:5: warning: this ‘if’
clause does not guard... [-Wmisleading-indentation]
    if (AliasFor == 0)
    ^~
./llvm/include/llvm/Support/CommandLine.h:1328:7: note: ...this
statement, but the latter is misleadingly indented as if it is guarded
by the ‘if’
      addArgument();
      ^~~~~~~~~~~
bytecode2llvm.cpp: In function ‘void setGuard(unsigned char*)’:
bytecode2llvm.cpp:2432:49: warning: ISO C++ forbids converting a
string constant to ‘char*’ [-Wpedantic]
    cl_hash_data("md5", salt, 48, guardbuf, NULL);
                                                ^
Makefile:2070: recipe for target 'libclamavcxx_la-bytecode2llvm.lo' failed
make[5]: *** [libclamavcxx_la-bytecode2llvm.lo] Error 1
make[5]: Leaving directory
'/home/peter/Schreibtisch/clamav-0.99.3/libclamav/c++'
Makefile:1469: recipe for target 'all' failed
make[4]: *** [all] Error 2
make[4]: Leaving directory
'/home/peter/Schreibtisch/clamav-0.99.3/libclamav/c++'
Makefile:3376: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/home/peter/Schreibtisch/clamav-0.99.3/libclamav'
Makefile:1089: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/peter/Schreibtisch/clamav-0.99.3/libclamav'
Makefile:675: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/peter/Schreibtisch/clamav-0.99.3'
Makefile:503: recipe for target 'all' failed
make: *** [all] Error 2
-------------------------------------
So what can I do to get clamav sourcecode compiled?

Kind regards
Peter Wiehe
_______________________________________________
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net

http://www.clamav.net/contact.html#ml

_______________________________________________
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net

http://www.clamav.net/contact.html#ml

Reply via email to