Git Product home page Git Product logo

vapoursynth-plusplus's Introduction

Under Construction

Vaporsynth C++ API

Compilation

requires a C++20 compiler (GCC11 or the latest version of MSVC)

Linux

$ meson build
$ ninja -C build

Manual

g++ -shared -std=c++2b -lstdc++ -static -O3 -flto -march=native -finline-limit=1000000000000000000000000000 -funroll-all-loops -funsafe-loop-optimizations -o Filter.dll Examples/EntryPoint.cxx vapoursynth.lib

vapoursynth-plusplus's People

Contributors

4re avatar ifeelbloated avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

vapoursynth-plusplus's Issues

compilation issue Mingw64 with gcc v10.1.0

On trying to compile mvtools-sf, I get the following:
What am I doing wrong ?
The breaking error seems to be:

include/vsFilterScript/Buffer.vxx:14:51: error: 'aligned_alloc' is not a member of 'std'; did you mean 'aligned_union'?

        Starting 64bit compilation of global tools
18:54:58 vsFilterScript git  ................................................ [Already built]
18:54:58   Running git update for vapoursynth-mvtools-sf...
18:55:00 ┌ vapoursynth-mvtools-sf git  ...................................... [Files missing]
18:55:01 ├ Installing fftw... done
The Meson build system
Version: 0.54.1
Source dir: H:/Mingw645/build/vapoursynth-mvtools-sf-git
Build dir: H:/Mingw645/build/vapoursynth-mvtools-sf-git/build
Build type: native build
Using 'PKG_CONFIG_PATH' from environment with value: 'H:\\Mingw645\\local64\\lib\\pkgconfig;H:\\Mingw645\\msys64\\mingw64\\lib\\pkgconfig'
Using 'PKG_CONFIG_PATH' from environment with value: 'H:\\Mingw645\\local64\\lib\\pkgconfig;H:\\Mingw645\\msys64\\mingw64\\lib\\pkgconfig'
Project name: vapoursynth-mvtools-sf
Project version: 10
Using 'CXX' from environment with value: 'g++.bat'
Using 'CXXFLAGS' from environment with value: '-mthreads -mtune=native -O2 -pipe'
Using 'LDFLAGS' from environment with value: '-pipe -static-libgcc -static-libstdc++'
Using 'CPPFLAGS' from environment with value: '-D_FORTIFY_SOURCE=0 -D__USE_MINGW_ANSI_STDIO=1'
Using 'CXX' from environment with value: 'g++.bat'
Using 'CXXFLAGS' from environment with value: '-mthreads -mtune=native -O2 -pipe'
Using 'LDFLAGS' from environment with value: '-pipe -static-libgcc -static-libstdc++'
Using 'CPPFLAGS' from environment with value: '-D_FORTIFY_SOURCE=0 -D__USE_MINGW_ANSI_STDIO=1'
C++ compiler for the host machine: g++.bat (gcc 10.1.0 "g++.exe (Rev2, Built by MSYS2 project) 10.1.0")
C++ linker for the host machine: g++.bat ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
Using 'PKG_CONFIG' from environment with value: 'pkg-config'
Found pkg-config: H:\Mingw645\msys64\mingw64\bin/pkg-config.EXE (0.29.2)
Using 'PKG_CONFIG_PATH' from environment with value: 'H:\\Mingw645\\local64\\lib\\pkgconfig;H:\\Mingw645\\msys64\\mingw64\\lib\\pkgconfig'
Run-time dependency vapoursynth found: YES 50
Using 'PKG_CONFIG_PATH' from environment with value: 'H:\\Mingw645\\local64\\lib\\pkgconfig;H:\\Mingw645\\msys64\\mingw64\\lib\\pkgconfig'
Run-time dependency vsfilterscript found: YES 1
Using 'PKG_CONFIG_PATH' from environment with value: 'H:\\Mingw645\\local64\\lib\\pkgconfig;H:\\Mingw645\\msys64\\mingw64\\lib\\pkgconfig'
Run-time dependency fftw3 found: YES 3.3.8
Build targets in project: 1

Found ninja.EXE-1.10.0 at H:\Mingw645\msys64\mingw64\bin/ninja.EXE
ninja: Entering directory `build'
[1/2] Compiling C++ object vapoursynth-mvtools-sf@sha/src_EntryPoint.cxx.obj
FAILED: vapoursynth-mvtools-sf@sha/src_EntryPoint.cxx.obj
g++.bat @vapoursynth-mvtools-sf@sha/src_EntryPoint.cxx.obj.rsp
In file included from H:/Mingw645/local64/include/vsFilterScript/Interface.vxx:3,
                 from ../src/EntryPoint.cxx:1:
H:/Mingw645/local64/include/vsFilterScript/Buffer.vxx: In constructor 'Buffer<PixelType>::Buffer(auto:126, auto:127)':
H:/Mingw645/local64/include/vsFilterScript/Buffer.vxx:14:51: error: 'aligned_alloc' is not a member of 'std'; did you mean 'aligned_union'?
   14 |   auto Origin = reinterpret_cast<PixelType*>(std::aligned_alloc(32, Stride * Height * sizeof(PixelType)));
      |                                                   ^~~~~~~~~~~~~
      |                                                   aligned_union
In file included from ../src/GroupOfPlanes.h:2,
                 from ../src/MVAnalyze.hxx:9,
                 from ../src/EntryPoint.cxx:3:
../src/PlaneOfBlocks.h: In constructor 'PlaneOfBlocks::PlaneOfBlocks(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t)':
../src/PlaneOfBlocks.h:420:57: warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct VectorStructure'; use assignment or value-initialization instead [-Wclass-memacces
s]
  420 |   memset(vectors, 0, nBlkCount * sizeof(VectorStructure));
      |                                                         ^
In file included from ../src/FakeBlockData.hpp:2,
                 from ../src/FakePlaneOfBlocks.hpp:4,
                 from ../src/FakeGroupOfPlanes.hpp:4,
                 from ../src/MVClip.hpp:4,
                 from ../src/PlaneOfBlocks.h:5,
                 from ../src/GroupOfPlanes.h:2,
                 from ../src/MVAnalyze.hxx:9,
                 from ../src/EntryPoint.cxx:3:
../src/MVInterface.h:16:8: note: 'struct VectorStructure' declared here
   16 | struct VectorStructure {
      |        ^~~~~~~~~~~~~~~
In file included from ../src/MVAnalyze.hxx:9,
                 from ../src/EntryPoint.cxx:3:
../src/GroupOfPlanes.h: In member function 'void GroupOfPlanes::ExtraDivide(int32_t*)':
../src/GroupOfPlanes.h:140:26: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'const long long unsigned int' [-Wsign-compare]
  140 |    for (int32_t i = 2; i < N_PER_BLOCK; i++) {
      |                        ~~^~~~~~~~~~~~~
../src/GroupOfPlanes.h:157:26: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'const long long unsigned int' [-Wsign-compare]
  157 |    for (int32_t i = 2; i < N_PER_BLOCK; i++) {
      |                        ~~^~~~~~~~~~~~~
../src/GroupOfPlanes.h:163:30: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'long long unsigned int' [-Wsign-compare]
  163 |    for (bx = N_PER_BLOCK; bx < nBlkXN - N_PER_BLOCK; bx += N_PER_BLOCK) {
      |                           ~~~^~~~~~~~~~~~~~~~~~~~~~
../src/GroupOfPlanes.h:190:27: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'const long long unsigned int' [-Wsign-compare]
  190 |     for (int32_t i = 2; i < N_PER_BLOCK; i++) {
      |                         ~~^~~~~~~~~~~~~
../src/GroupOfPlanes.h:204:26: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'const long long unsigned int' [-Wsign-compare]
  204 |    for (int32_t i = 2; i < N_PER_BLOCK; i++) {
      |                        ~~^~~~~~~~~~~~~
../src/GroupOfPlanes.h:221:26: warning: comparison of integer expressions of different signedness: 'int32_t' {aka 'int'} and 'const long long unsigned int' [-Wsign-compare]
  221 |    for (int32_t i = 2; i < N_PER_BLOCK; i++) {
      |                        ~~^~~~~~~~~~~~~
In file included from ../src/EntryPoint.cxx:8:
../src/MVFinest.hxx: In function 'const VSFrameRef* mvfinestGetFrame(int32_t, int32_t, void**, void**, VSFrameContext*, VSCore*, const VSAPI*)':
../src/MVFinest.hxx:42:11: warning: unused variable 'bitsPerSample' [-Wunused-variable]
   42 |   int32_t bitsPerSample = d->vi.format->bitsPerSample;
      |           ^~~~~~~~~~~~~
In file included from ../src/MVFrame.h:6,
                 from ../src/MVSuper.hxx:7,
                 from ../src/EntryPoint.cxx:2:
../src/Interpolation.h: In instantiation of 'void RB2BilinearFilteredVertical(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int
':
../src/Interpolation.h:178:40:   required from 'void RB2BilinearFiltered(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:292:82:   required from here
../src/Interpolation.h:134:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  134 |  int32_t nWidthMMX = (nWidth / 8) * 8;
      |          ^~~~~~~~~
../src/Interpolation.h: In instantiation of 'void RB2BilinearFilteredHorizontalInplace(uint8_t*, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]':
../src/Interpolation.h:179:49:   required from 'void RB2BilinearFiltered(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:292:82:   required from here
../src/Interpolation.h:161:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  161 |  int32_t nWidthMMX = 1 + ((nWidth - 2) / 8) * 8;
      |          ^~~~~~~~~
../src/Interpolation.h: In instantiation of 'void RB2QuadraticVertical(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]':
../src/Interpolation.h:236:33:   required from 'void RB2Quadratic(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:297:82:   required from here
../src/Interpolation.h:190:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  190 |  int32_t nWidthMMX = (nWidth / 8) * 8;
      |          ^~~~~~~~~
../src/Interpolation.h: In instantiation of 'void RB2QuadraticHorizontalInplace(uint8_t*, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]':
../src/Interpolation.h:237:42:   required from 'void RB2Quadratic(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:297:82:   required from here
../src/Interpolation.h:219:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  219 |  int32_t nWidthMMX = 1 + ((nWidth - 2) / 8) * 8;
      |          ^~~~~~~~~
../src/Interpolation.h: In instantiation of 'void RB2CubicVertical(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]':
../src/Interpolation.h:294:29:   required from 'void RB2Cubic(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:302:82:   required from here
../src/Interpolation.h:248:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  248 |  int32_t nWidthMMX = (nWidth / 8) * 8;
      |          ^~~~~~~~~
../src/Interpolation.h: In instantiation of 'void RB2CubicHorizontalInplace(uint8_t*, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]':
../src/Interpolation.h:295:38:   required from 'void RB2Cubic(uint8_t*, const uint8_t*, int32_t, int32_t, int32_t, int32_t) [with PixelType = float; uint8_t = unsigned char; int32_t = int]'
../src/MVFrame.h:302:82:   required from here
../src/Interpolation.h:277:10: warning: unused variable 'nWidthMMX' [-Wunused-variable]
  277 |  int32_t nWidthMMX = 1 + ((nWidth - 2) / 8) * 8;
      |          ^~~~~~~~~
ninja: build stopped: subcommand failed.
ninja: error: loading 'build.ninja': Het systeem kan het opgegeven bestand niet vinden.

fail build in latest commit

build ok in a2ea682

but fails in 2dffdcd

GaussBlur.hxx: In member function 'auto GaussBlur::DrawFrame(auto:119, auto:120, auto:121)':
GaussBlur.hxx:35:25: error: invalid types 'long int[long int]' for array subscript
   35 |      ProcessedFrame[c][y][x] = GaussBlur(InputFrame[c].View(y, x));
      |                         ^
In file included from EntryPoint.cxx:2:
GaussBlur.hxx: In instantiation of 'auto GaussBlur::DrawFrame(auto:119, auto:120, auto:121) [with auto:119 = int; auto:120 = VaporCore; auto:121 = VSFrameContext*]':
Interface.hxx:26:79:   required from 'auto VaporInterface::Evaluate(auto:99, auto:100, auto:101, auto:102, auto:103, auto:104, auto:105 ...) [with FilterType = GaussBlur; auto:99 = int; auto:100 = int; auto:101 = void**; auto:102 = void**; auto:103 = VSFrameContext*; auto:104 = VSCore*; auto:105 = {const VSAPI*}]'
Interface.hxx:40:3:   required from 'auto VaporInterface::Create(auto:106, auto:107, auto:108, auto:109, auto:110) [with FilterType = GaussBlur; auto:106 = const VSMap*; auto:107 = VSMap*; auto:108 = void*; auto:109 = VSCore*; auto:110 = const VSAPI*]'
Interface.hxx:45:9:   required from 'auto VaporInterface::RegisterFilter(auto:111, auto:112) [with FilterType = GaussBlur; auto:111 = void (*)(const char*, const char*, void (*)(const VSMap*, VSMap*, void*, VSCore*, const VSAPI*), void*, VSPlugin*); auto:112 = VSPlugin*]'
EntryPoint.cxx:9:64:   required from here
GaussBlur.hxx:25:91: error: request for member 'Width' in 'InputFrame.Frame<const float>::operator[]<int>(0)', which is of non-class type 'int'
   25 |   auto ProcessedFrame = Frame<float>{ Core.AllocateFrame(InputFrame.Format, InputFrame[0].Width, InputFrame[0].Height, InputFrame) };
      |                                                                             ~~~~~~~~~~~~~~^~~~~
GaussBlur.hxx:25:112: error: request for member 'Height' in 'InputFrame.Frame<const float>::operator[]<int>(0)', which is of non-class type 'int'
   25 |   auto ProcessedFrame = Frame<float>{ Core.AllocateFrame(InputFrame.Format, InputFrame[0].Width, InputFrame[0].Height, InputFrame) };
      |                                                                                                  ~~~~~~~~~~~~~~^~~~~~
GaussBlur.hxx:25:8: error: no matching function for call to 'Frame<float>::Frame(<brace-enclosed initializer list>)'
   25 |   auto ProcessedFrame = Frame<float>{ Core.AllocateFrame(InputFrame.Format, InputFrame[0].Width, InputFrame[0].Height, InputFrame) };
      |        ^~~~~~~~~~~~~~
In file included from Clip.hxx:2,
                 from Map.hxx:2,
                 from Interface.hxx:2,
                 from EntryPoint.cxx:1:
Frame.hxx:24:2: note: candidate: 'Frame<PixelType>::Frame(Frame<PixelType>&&) [with PixelType = float]'
   24 |  Frame(Frame&& OtherFrame) {
      |  ^~~~~
Frame.hxx:24:2: note:   conversion of argument 1 would be ill-formed:
Frame.hxx:21:2: note: candidate: 'Frame<PixelType>::Frame(const Frame<PixelType>&) [with PixelType = float]'
   21 |  Frame(const Frame& OtherFrame) {
      |  ^~~~~
Frame.hxx:21:2: note:   conversion of argument 1 would be ill-formed:
Frame.hxx:15:2: note: candidate: 'template<class auto:43> Frame<PixelType>::Frame(auto:43)'
   15 |  Frame(auto RawFrame) {
      |  ^~~~~
Frame.hxx:15:2: note:   template argument deduction/substitution failed:
Frame.hxx:14:2: note: candidate: 'constexpr Frame<PixelType>::Frame() [with PixelType = float]'
   14 |  Frame() = default;
      |  ^~~~~
Frame.hxx:14:2: note:   candidate expects 0 arguments, 1 provided
In file included from EntryPoint.cxx:2:
GaussBlur.hxx:33:39: error: request for member 'Height' in 'InputFrame.Frame<const float>::operator[]<long int>(c)', which is of non-class type 'long int'
   33 |    for (auto y : Range{ InputFrame[c].Height })
      |                         ~~~~~~~~~~~~~~^~~~~~
GaussBlur.hxx:33:4: error: no matching function for call to 'Range::Range(<brace-enclosed initializer list>)'
   33 |    for (auto y : Range{ InputFrame[c].Height })
      |    ^~~
In file included from Plane.hxx:2,
                 from Frame.hxx:3,
                 from Clip.hxx:2,
                 from Map.hxx:2,
                 from Interface.hxx:2,
                 from EntryPoint.cxx:1:
Range.hxx:38:2: note: candidate: 'template<class auto:12, class auto:13, class auto:14> Range::Range(auto:12, auto:13, auto:14)'
   38 |  Range(auto Startpoint, auto Endpoint, auto Step) {
      |  ^~~~~
Range.hxx:38:2: note:   template argument deduction/substitution failed:
Range.hxx:32:2: note: candidate: 'template<class auto:10, class auto:11> Range::Range(auto:10, auto:11)'
   32 |  Range(auto Startpoint, auto Endpoint) {
      |  ^~~~~
Range.hxx:32:2: note:   template argument deduction/substitution failed:
Range.hxx:27:2: note: candidate: 'template<class auto:9> Range::Range(auto:9)'
   27 |  Range(auto Endpoint) {
      |  ^~~~~
Range.hxx:27:2: note:   template argument deduction/substitution failed:
Range.hxx:26:2: note: candidate: 'constexpr Range::Range()'
   26 |  Range() = default;
      |  ^~~~~
Range.hxx:26:2: note:   candidate expects 0 arguments, 1 provided
Range.hxx:4:7: note: candidate: 'constexpr Range::Range(const Range&)'
    4 | class Range final {
      |       ^~~~~
Range.hxx:4:7: note:   conversion of argument 1 would be ill-formed:
Range.hxx:4:7: note: candidate: 'constexpr Range::Range(Range&&)'
Range.hxx:4:7: note:   conversion of argument 1 would be ill-formed:
In file included from EntryPoint.cxx:2:
GaussBlur.hxx:34:40: error: request for member 'Width' in 'InputFrame.Frame<const float>::operator[]<long int>(c)', which is of non-class type 'long int'
   34 |     for (auto x : Range{ InputFrame[c].Width })
      |                          ~~~~~~~~~~~~~~^~~~~
GaussBlur.hxx:34:5: error: no matching function for call to 'Range::Range(<brace-enclosed initializer list>)'
   34 |     for (auto x : Range{ InputFrame[c].Width })
      |     ^~~
In file included from Plane.hxx:2,
                 from Frame.hxx:3,
                 from Clip.hxx:2,
                 from Map.hxx:2,
                 from Interface.hxx:2,
                 from EntryPoint.cxx:1:
Range.hxx:38:2: note: candidate: 'template<class auto:12, class auto:13, class auto:14> Range::Range(auto:12, auto:13, auto:14)'
   38 |  Range(auto Startpoint, auto Endpoint, auto Step) {
      |  ^~~~~
Range.hxx:38:2: note:   template argument deduction/substitution failed:
Range.hxx:32:2: note: candidate: 'template<class auto:10, class auto:11> Range::Range(auto:10, auto:11)'
   32 |  Range(auto Startpoint, auto Endpoint) {
      |  ^~~~~
Range.hxx:32:2: note:   template argument deduction/substitution failed:
Range.hxx:27:2: note: candidate: 'template<class auto:9> Range::Range(auto:9)'
   27 |  Range(auto Endpoint) {
      |  ^~~~~
Range.hxx:27:2: note:   template argument deduction/substitution failed:
Range.hxx:26:2: note: candidate: 'constexpr Range::Range()'
   26 |  Range() = default;
      |  ^~~~~
Range.hxx:26:2: note:   candidate expects 0 arguments, 1 provided
Range.hxx:4:7: note: candidate: 'constexpr Range::Range(const Range&)'
    4 | class Range final {
      |       ^~~~~
Range.hxx:4:7: note:   conversion of argument 1 would be ill-formed:
Range.hxx:4:7: note: candidate: 'constexpr Range::Range(Range&&)'
Range.hxx:4:7: note:   conversion of argument 1 would be ill-formed:
In file included from EntryPoint.cxx:2:
GaussBlur.hxx:35:56: error: request for member 'View' in 'InputFrame.Frame<const float>::operator[]<long int>(c)', which is of non-class type 'long int'
   35 |      ProcessedFrame[c][y][x] = GaussBlur(InputFrame[c].View(y, x));
      |                                          ~~~~~~~~~~~~~~^~~~
In file included from Clip.hxx:2,
                 from Map.hxx:2,
                 from Interface.hxx:2,
                 from EntryPoint.cxx:1:
Frame.hxx: In instantiation of 'auto& Frame<PixelType>::operator[](auto:46) [with auto:46 = int; PixelType = const float]':
GaussBlur.hxx:25:87:   required from 'auto GaussBlur::DrawFrame(auto:119, auto:120, auto:121) [with auto:119 = int; auto:120 = VaporCore; auto:121 = VSFrameContext*]'
Interface.hxx:26:79:   required from 'auto VaporInterface::Evaluate(auto:99, auto:100, auto:101, auto:102, auto:103, auto:104, auto:105 ...) [with FilterType = GaussBlur; auto:99 = int; auto:100 = int; auto:101 = void**; auto:102 = void**; auto:103 = VSFrameContext*; auto:104 = VSCore*; auto:105 = {const VSAPI*}]'
Interface.hxx:40:3:   required from 'auto VaporInterface::Create(auto:106, auto:107, auto:108, auto:109, auto:110) [with FilterType = GaussBlur; auto:106 = const VSMap*; auto:107 = VSMap*; auto:108 = void*; auto:109 = VSCore*; auto:110 = const VSAPI*]'
Interface.hxx:45:9:   required from 'auto VaporInterface::RegisterFilter(auto:111, auto:112) [with FilterType = GaussBlur; auto:111 = void (*)(const char*, const char*, void (*)(const VSMap*, VSMap*, void*, VSCore*, const VSAPI*), void*, VSPlugin*); auto:112 = VSPlugin*]'
EntryPoint.cxx:9:64:   required from here
Frame.hxx:60:22: error: invalid initialization of reference of type 'int&' from expression of type 'std::array<Plane<const float, PaddingPolicies::Spatial::<lambda(auto:33, auto:34, auto:35, auto:36, auto:37)> >, 3>::value_type' {aka 'Plane<const float, PaddingPolicies::Spatial::<lambda(auto:33, auto:34, auto:35, auto:36, auto:37)> >'}
   60 |   return Planes[Index];
      |                      ^
make: *** [Makefile:2: all] Error 1

gcc 9.3.0

rules:

g++ -c -std=c++2a -fPIC -march=native -O3 -pipe -fno-plt -D_FORTIFY_SOURCE=2 -I. -I/usr/include/vapoursynth  -o EntryPoint.o EntryPoint.cxx
g++ -shared -fPIC -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -lstdc++ -o lib${_plug}.so EntryPoint.o"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.