HomeOfVapourSynthEvolution / VapourSynth-BM3D

BM3D denoising filter for VapourSynth
MIT License
116 stars 31 forks source link

r3 does not compile under Linux #12

Closed 4re closed 9 years ago

4re commented 9 years ago

As stated at https://github.com/4re/vapoursynth-portage/issues/7#issuecomment-124878052 and this is the log for clang:


These are the packages that would be merged, in order:

Calculating dependencies  .. .... done!
[ebuild     UD ] media-plugins/vapoursynth-bm3d-3 [9999]

Would you like to merge these packages? [Yes/No] 
>>> Verifying ebuild manifests

>>> Emerging (1 of 1) media-plugins/vapoursynth-bm3d-3::vapoursynth
 * vapoursynth-bm3d-3.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...        [ ok ]
>>> Unpacking source...
>>> Source unpacked in /var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work
>>> Preparing source in /var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3 ...
CXXFLAGS/LDFLAGS checking...
checking for fftw3f...

settings...
CXX          = clang++
LD           = clang++
STRIP        = strip
CXXFLAGS     = -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth 
LDFLAGS      = -shared -Wl,-Bsymbolic -Wl,-soname,libbm3d.so -fPIC  -Wl,-O1 -Wl,--as-needed
LIBS         = -lfftw3f -lvapoursynth  
LIBNAME      = libbm3d.so
install path = /var/tmp/portage/media-plugins/vapoursynth-bm3d-3/image//usr/lib64/vapoursynth/
configure finished.
>>> Source configured.
>>> Compiling source in /var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3 ...
make -j8 
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/BM3D_Base.cpp -o source/BM3D_Base.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/BM3D_Basic.cpp -o source/BM3D_Basic.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/BM3D.cpp -o source/BM3D.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/BM3D_Final.cpp -o source/BM3D_Final.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/VAggregate.cpp -o source/VAggregate.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/VBM3D_Base.cpp -o source/VBM3D_Base.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/VBM3D_Basic.cpp -o source/VBM3D_Basic.o
clang++ -O2 -ffast-math -std=c++11 -Wall -Wno-unused-local-typedefs -I. -I./include -march=native -pipe -O3 -msse2  -fPIC -mfpmath=sse -I/usr/include/vapoursynth  -c source/VBM3D_Final.cpp -o source/VBM3D_Final.o
In file included from source/BM3D_Basic.cpp:20:
In file included from ./include/BM3D_Basic.h:24:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: In file included from source/BM3D_Base.cpp:20:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/VBM3D_Basic.cpp:20:
In file included from ./include/VBM3D_Basic.h:24:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
In file included from source/VBM3D_Base.cpp:20:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: ./include/Helper.h:352:54: error: expectedexpected '(' for function-style cast or type
      construction
 '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/BM3D.cpp:20:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/BM3D_Final.cpp:20:
In file included from ./include/BM3D_Final.h:24:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/VAggregate.cpp:20:
In file included from ./include/VAggregate.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/VBM3D_Final.cpp:20:
In file included from ./include/VBM3D_Final.h:24:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:25:
In file included from ./include/Conversion.hpp:24:
./include/Helper.h:352:54: error: expected '(' for function-style cast or type
      construction
    return _RoundDiv(dividend, divisor, _IsFloat<_Ty>);
                                        ~~~~~~~~~~~~~^
In file included from source/VBM3D_Basic.cpp:20:
In file included from ./include/VBM3D_Basic.h:24:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
In file included from source/VBM3D_Base.cpp:20:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14./include/Type.h:195:14: note: constructor declared here
: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/BM3D_Base.cpp:20:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/BM3D_Basic.cpp:20:
In file included from ./include/BM3D_Basic.h:24:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/BM3D.cpp:20:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/VAggregate.cpp:20:
In file included from ./include/VAggregate.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/BM3D_Final.cpp:20:
In file included from ./include/BM3D_Final.h:24:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
In file included from source/VBM3D_Base.cpp:20:
./include/VBM3D_Base.h:273:18: warning: 'NewFormat' overrides a member function
      but is not marked 'override' [-Winconsistent-missing-override]
    virtual void NewFormat()
                 ^
./include/Helper.h:655:18: note: overridden virtual function is here
    virtual void NewFormat()
                 ^
In file included from source/VBM3D_Basic.cpp:20:
In file included from ./include/VBM3D_Basic.h:24:
./include/VBM3D_Base.h:273:18In file included from source/VBM3D_Final.cpp:20:
In file included from ./include/VBM3D_Final.h:24:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:62:20: error: chosen constructor is explicit in
      copy-initialization
    PosType pos_ = { 0, 0 };
                   ^~~~~~~~
./include/Type.h:195:14: note: constructor declared here
    explicit Pos(PCType _y = 0, PCType _x = 0)
             ^
: warning: 'NewFormat' overrides a member function
      but is not marked 'override' [-Winconsistent-missing-override]
    virtual void NewFormat()
                 ^
./include/Helper.h:655:18: note: overridden virtual function is here
    virtual void NewFormat()
                 ^
In file included from source/VBM3D_Final.cpp:20:
In file included from ./include/VBM3D_Final.h:24:
./include/VBM3D_Base.h:273:18: warning: 'NewFormat' overrides a member function
      but is not marked 'override' [-Winconsistent-missing-override]
    virtual void NewFormat()
                 ^
./include/Helper.h:655:18: note: overridden virtual function is here
    virtual void NewFormat()
                 ^
2 errors generated.
GNUmakefile:31: recipe for target 'source/BM3D.o' failed
make: *** [source/BM3D.o] Error 1
make: *** Waiting for unfinished jobs....
2 errors generated.
GNUmakefile:31: recipe for target 'source/VAggregate.o' failed
make: *** [source/VAggregate.o] Error 1
2 errors generated.
In file included from source/BM3D_Base.cpp:20:
In file included from ./include/BM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:117:11: error: no matching constructor for initialization of
      'Block<float, float>'
GNUmakefile:31: recipe for target 'source/BM3D_Basic.o' failed
make: *** [source/BM3D_Basic.o] Error 1
        : Block(_Height, _Width, pos, false)
          ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
source/BM3D_Base.cpp:455:16: note: in instantiation of function template
      specialization 'Block<float, float>::Block<float>' requested here
    block_type refBlock(ref, ref_stride[0], d.para.BlockSize, d.para.Blo...
               ^
./include/Block.h:116:5: note: candidate constructor template not viable:
      requires 5 arguments, but 4 were provided
    Block(const _St1 *src, PCType src_stride, PCType _Height, PCType _Wi...
    ^
./include/Block.h:123:5: note: candidate constructor not viable: requires at
      most 3 arguments, but 4 were provided
    Block(const _Myt &src, bool Init, value_type Value = 0)
    ^
./include/Block.h:128:5: note: candidate constructor not viable: requires single
      argument 'src', but 4 arguments were provided
    Block(const _Myt &src)
    ^
./include/Block.h:104:5: note: candidate constructor not viable: requires 0
      arguments, but 4 were provided
    Block() {}
    ^
2 errors generated.
GNUmakefile:31: recipe for target 'source/BM3D_Final.o' failed
make: *** [source/BM3D_Final.o] Error 1
3 errors generated.
GNUmakefile:31: recipe for target 'source/BM3D_Base.o' failed
make: *** [source/BM3D_Base.o] Error 1
1 warning and 2 errors generated.
GNUmakefile:31: recipe for target 'source/VBM3D_Basic.o' failed
make: *** [source/VBM3D_Basic.o] Error 1
In file included from source/VBM3D_Base.cpp:20:
In file included from ./include/VBM3D_Base.h:24:
In file included from ./include/BM3D.h:26:
./include/Block.h:117:11: error: no matching constructor for initialization of
      'Block<float, float>'
        : Block(_Height, _Width, pos, false)
          ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
source/VBM3D_Base.cpp:575:16: note: in instantiation of function template
      specialization 'Block<float, float>::Block<float>' requested here
    block_type refBlock(ref[cur], ref_stride[0], d.para.BlockSize, d.par...
               ^
./include/Block.h:116:5: note: candidate constructor template not viable:
      requires 5 arguments, but 4 were provided
    Block(const _St1 *src, PCType src_stride, PCType _Height, PCType _Wi...
    ^
./include/Block.h:123:5: note: candidate constructor not viable: requires at
      most 3 arguments, but 4 were provided
    Block(const _Myt &src, bool Init, value_type Value = 0)
    ^
./include/Block.h:128:5: note: candidate constructor not viable: requires single
      argument 'src', but 4 arguments were provided
    Block(const _Myt &src)
    ^
./include/Block.h:104:5: note: candidate constructor not viable: requires 0
      arguments, but 4 were provided
    Block() {}
    ^
1 warning and 2 errors generated.
GNUmakefile:31: recipe for target 'source/VBM3D_Final.o' failed
make: *** [source/VBM3D_Final.o] Error 1
1 warning and 3 errors generated.
GNUmakefile:31: recipe for target 'source/VBM3D_Base.o' failed
make: *** [source/VBM3D_Base.o] Error 1
 * ERROR: media-plugins/vapoursynth-bm3d-3::vapoursynth failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=media-plugins/vapoursynth-bm3d-3::vapoursynth'`,
 * the complete build log and the output of `emerge -pqv '=media-plugins/vapoursynth-bm3d-3::vapoursynth'`.
 * The complete build log is located at '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/temp/environment'.
 * Working directory: '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3'
 * S: '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3'

>>> Failed to emerge media-plugins/vapoursynth-bm3d-3, Log file:

>>>  '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/temp/build.log'

 * Messages for package media-plugins/vapoursynth-bm3d-3:

 * ERROR: media-plugins/vapoursynth-bm3d-3::vapoursynth failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=media-plugins/vapoursynth-bm3d-3::vapoursynth'`,
 * the complete build log and the output of `emerge -pqv '=media-plugins/vapoursynth-bm3d-3::vapoursynth'`.
 * The complete build log is located at '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/temp/environment'.
 * Working directory: '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3'
 * S: '/var/tmp/portage/media-plugins/vapoursynth-bm3d-3/work/vapoursynth-bm3d-3'
mawen1250 commented 9 years ago

Sorry I don't get what's the problem. These errors/warnings were already fixed in previous commits: https://github.com/HomeOfVapourSynthEvolution/VapourSynth-BM3D/commit/d50b361af00ff9372950adf5a9b8548d7c3582b0 https://github.com/HomeOfVapourSynthEvolution/VapourSynth-BM3D/commit/c421734c32f7a243ca5f32cde760221a7d773808 https://github.com/HomeOfVapourSynthEvolution/VapourSynth-BM3D/commit/ecb86ac3075e842f9852b84d003858e68f95f5dc

4re commented 9 years ago

Ok, I see, this is only a problem with latest build (r3), nothing wrong with git version, I guess I will create a diff with the fixes. Sorry for the inconveniences.

Moiman commented 9 years ago

Maybe new release would be good.