Errors making cairo-gl - opengl

I'm building Cairo 1.12.14 with MSYS on Windows.
Successfully configured with --enable-gl=yes, however, when I run make, I get the following error:
make all-recursive
make[1]: Entering directory `/c/Users/Nathan/BuildCairo/cairo'
Making all in src
make[2]: Entering directory `/c/Users/Nathan/BuildCairo/cairo/src'
make all-am
make[3]: Entering directory `/c/Users/Nathan/BuildCairo/cairo/src'
CC cairo-png.lo
CC cairo-gl-composite.lo
In file included from cairo-gl-composite.c:48:0:
cairo-gl-private.h:250:40: error: unknown type name 'GLsizeiptr'
cairo-gl-private.h:258:8: error: unknown type name 'GLchar'
cairo-gl-private.h:262:22: error: unknown type name 'GLchar'
cairo-gl-private.h:273:23: error: unknown type name 'GLchar'
cairo-gl-private.h:276:5: error: unknown type name 'GLchar'
cairo-gl-private.h:290:5: error: unknown type name 'GLchar'
cairo-gl-composite.c: In function '_cairo_gl_texture_set_extend':
cairo-gl-composite.c:193:18: error: 'GL_MIRRORED_REPEAT' undeclared (first use i
n this function)
cairo-gl-composite.c:193:18: note: each undeclared identifier is reported only o
nce for each function it appears in
cairo-gl-composite.c: In function '_cairo_gl_set_operator':
cairo-gl-composite.c:387:9: error: implicit declaration of function 'glBlendFunc
Separate' [-Werror=implicit-function-declaration]
cairo-gl-composite.c:387:9: warning: nested extern declaration of 'glBlendFuncSe
parate' [-Wnested-externs]
cairo-gl-composite.c: In function '_cairo_gl_composite_begin':
cairo-gl-composite.c:751:41: warning: ignoring return value of '_cairo_gl_set_op
erands_and_operator', declared with attribute warn_unused_result [-Wunused-resul
t]
cc1.exe: some warnings being treated as errors
make[3]: *** [cairo-gl-composite.lo] Error 1
make[3]: Leaving directory `/c/Users/Nathan/BuildCairo/cairo/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/c/Users/Nathan/BuildCairo/cairo/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/c/Users/Nathan/BuildCairo/cairo'
make: *** [all] Error 2
Any ideas? Configure had this to say:
--- The OpenGL surface backend feature is still under active development and
--- is included in this release only as a preview. It does NOT fully work yet
--- and incompatible changes may yet be made to OpenGL surface backend
--- specific API.
Is this problem fixable for this version?

Related

Is it possible to get list of libraries set that produce fine build?

Trying to build GCC for Raspberry Pi from source according to project in my Ubuntu 20.04 machine with gcc 9.3.0 . Getting different problems while taking different sets of libraries
Configuration below brings __uint128_t error:
GCC_VERSION="9.3.0"
BINUTILS_VERSION="2.34"
GLIBC_VERSION="2.31"
MPFR_VERSION="3.1.6"
MPC_VERSION="1.0.3"
GMP_VERSION="6.2.0"
CLOOG_VERSION="0.18.1"
In file included from ../sysdeps/unix/sysv/linux/bits/sigcontext.h:30,
from ../signal/signal.h:291,
from ../include/signal.h:2,
from ../misc/sys/param.h:28,
from ../include/sys/param.h:1,
from ../sysdeps/generic/hp-timing-common.h:39,
from ../sysdeps/generic/hp-timing.h:25,
from ../nptl/descr.h:27,
from ../sysdeps/arm/nptl/tls.h:42,
from ../sysdeps/unix/sysv/linux/arm/tls.h:23,
from ../sysdeps/unix/sysv/linux/arm/sysdep.h:30,
from <stdin>:1:
/home/a/gcc_buildings/1/xc-arm-linux-gnueabi/arm-linux-gnueabi/include/asm/sigcontext.h:77:2: error: unknown type name ‘__uint128_t’
77 | __uint128_t vregs[32];
| ^~~~~~~~~~~
Configurations below brings the same mpfr_fmma error:
GCC_VERSION="9.3.0"
BINUTILS_VERSION="2.34"
GLIBC_VERSION="2.31"
MPFR_VERSION="4.1.0"
MPC_VERSION="1.0.3"
GMP_VERSION="6.2.0"
CLOOG_VERSION="0.18.1"
GCC_VERSION=9.3.0"
MPFR_VERSION="4.1.0"
MPC_VERSION="1.2.1"
GMP_VERSION="6.2.1"
ISL_VERSION="0.18"
CLOOG_VERSION="0.18.1"
/home/a/gcc-cross-compiler/xc-arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/tmp/gcc-4.9.2/mpfr/src/mpfr.h:765:21: note: previous declaration of ‘mpfr_fmma’ was here
765 | __MPFR_DECLSPEC int mpfr_fmma (mpfr_ptr, mpfr_srcptr, mpfr_srcptr, mpfr_srcptr,
| ^~~~~~~~~
make[3]: *** [Makefile:532: mul.lo] Error 1
make[3]: Leaving directory '/home/a/gcc-cross-compiler/xc-arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/tmp/build-gcc/mpc/src'
make[2]: *** [Makefile:462: all-recursive] Error 1
make[2]: Leaving directory '/home/a/gcc-cross-compiler/xc-arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/tmp/build-gcc/mpc'
make[1]: *** [Makefile:373: all] Error 2
make[1]: Leaving directory '/home/a/gcc-cross-compiler/xc-arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/tmp/build-gcc/mpc'
make: *** [Makefile:5289: all-mpc] Error
In other libraries combinations I'm getting other errors.
Is it possible to get list of libraries set that produce fine build?

Building webassembly with opencv

I've been trying to build a piece of code in webassembly that would use OpenCV.
I took https://github.com/mpizenberg/emscripten-opencv to start building, this worked well, but when I try adding cv::resize to be able to resize an image, that's when I have some issues:
make[1]: Entering directory '/code/build'
make[2]: Entering directory '/code/build'
make[3]: Entering directory '/code/build'
Scanning dependencies of target hello
make[3]: Leaving directory '/code/build'
make[3]: Entering directory '/code/build'
[ 50%] Building CXX object CMakeFiles/hello.dir/source/main.cpp.o
[100%] Linking CXX executable hello.js
error: undefined symbol: _Z7cvFloorRKN2cv10softdoubleE
warning: To disable errors for undefined symbols use `-s ERROR_ON_UNDEFINED_SYMBOLS=0`
error: undefined symbol: _Z7cvRoundRKN2cv10softdoubleE
error: undefined symbol: _Z9cvRound64RKN2cv10softdoubleE
error: undefined symbol: _ZN2cv10softdoubleC1Ei
error: undefined symbol: _ZN2cv10softdoubleC1Ex
error: undefined symbol: _ZNK2cv10softdoubledvERKS0_
error: undefined symbol: _ZNK2cv10softdoublemiERKS0_
error: undefined symbol: _ZNK2cv10softdoublemlERKS0_
error: undefined symbol: _ZNK2cv10softdoubleplERKS0_
Error: Aborting compilation due to previous errors
shared:ERROR: '/emsdk_portable/node/bin/node /emsdk_portable/sdk/src/compiler.js /tmp/tmpS6bxjF.txt /emsdk_portable/sdk/src/embind/emval.js /emsdk_portable/sdk/src/embind/embind.js /emsdk_portable/sdk/src/library_pthread_stub.js' failed (1)
CMakeFiles/hello.dir/build.make:95: recipe for target 'hello.js' failed
make[3]: *** [hello.js] Error 1
make[3]: Leaving directory '/code/build'
CMakeFiles/Makefile2:72: recipe for target 'CMakeFiles/hello.dir/all' failed
make[2]: *** [CMakeFiles/hello.dir/all] Error 2
make[2]: Leaving directory '/code/build'
Makefile:83: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/code/build'
Makefile:5: recipe for target 'build' failed
make: *** [build] Error 2
The command '/bin/sh -c make build' returned a non-zero code: 2
make: *** [all] Error 2
I tried wrapping up my problem here https://github.com/jdrouet/opencv-wasm, you can pull it and run make, it'll build with docker.
Do you have any idea of how I could fix my issue?
Ok, looks like I found a way to build it (still here https://github.com/jdrouet/opencv-wasm) but now, when I try to use the resize function, I end up with the following error :
Error: the string "174007712 - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch." was thrown, throw an Error :)
So now, I don't know if I'm not using the function well... Here is the function : https://github.com/jdrouet/opencv-wasm/blob/master/source/resizer.cpp#L23
Do you have any idea of why it's not working?

'CORBA::LongDoubleSeq' has not been declared

I built omniORB-4.2.1 by VS2013+Cygwin(0.9.1-1) on Windows7 32bit.
I placed omniORB under C drive.
Then I tried to build SALOME-KERNEL by MinGW and got following error message related to omniORB.
[5%] Building CXX object idl/CMakeFiles/SalomeIDLKernel.dir/SALOME_ExceptionSK
.cc.obj
In file included from C:/omniORB-4.2.1/include/omniORB4/CORBA.h:221:0,
from c:/src/salome7/buildKernel/idl/SALOME_Exception.hh:6,
from c:/src/salome7/buildKernel/idl/SALOME_ExceptionSK.cc:3:
C:/omniORB-4.2.1/include/omniORB4/dynAny.h:151:47: error: 'CORBA::LongDoubleSeq'
has not been declared
virtual void insert_longdouble_seq(CORBA::LongDoubleSeq& value) = 0;
^
C:/omniORB-4.2.1/include/omniORB4/dynAny.h:171:20: error: 'LongDoubleSeq' in nam
espace 'CORBA' does not name a type
virtual CORBA::LongDoubleSeq* get_longdouble_seq() = 0;
^
idl/CMakeFiles/SalomeIDLKernel.dir/build.make:333: recipe for target `idl/CMakeF
iles/SalomeIDLKernel.dir/SALOME_ExceptionSK.cc.obj' failed
make[2]: *** [idl/CMakeFiles/SalomeIDLKernel.dir/SALOME_ExceptionSK.cc.obj] Erro
r 1
CMakeFiles/Makefile2:86: recipe for target `idl/CMakeFiles/SalomeIDLKernel.dir/a
ll' failed
make[1]: *** [idl/CMakeFiles/SalomeIDLKernel.dir/all] Error 2
Makefile:127: recipe for target `all' failed
make: *** [all] Error 2
Does anyone know how to this problem?
SALOME? omniORB? Which is the matter?

Qt on RaspberryPi - QXmlAttributes implicit declaration

I am building Qt on RaspberryPi using host desktop following this guide https://wiki.qt.io/Raspberry_Pi_Beginners_Guide.
And when it comes to building Qt with make command i got a strange error:
In file included from ../../include/QtXml/qxml.h:1:0,
from dom/qdom.cpp:54:
../../include/QtXml/../../src/xml/sax/qxml.h:121:5: error: function ‘QXmlAttributes::QXmlAttributes(QXmlAttributes&&)’ defaulted on its first declaration with an exception-specification that differs from the implicit declaration ‘QXmlAttributes::QXmlAttributes(QXmlAttributes&&)’
Makefile:1338: recipe for target '.obj/qdom.o' failed
make[2]: *** [.obj/qdom.o] Error 1
make[2]: Leaving directory '/home/anon/opt/qt5/qtbase/src/xml'
Makefile:295: recipe for target 'sub-xml-make_first' failed
make[1]: *** [sub-xml-make_first] Error 2
make[1]: Leaving directory '/home/anon/opt/qt5/qtbase/src'
Makefile:46: recipe for target 'sub-src-make_first' failed
make: *** [sub-src-make_first] Error 2
Some specification:
Host - Debian Jessie
RPI - Raspbian
What should I do now? Restarting installation from beginning gives nothing.
The first error apparently is resulted from a conflict in the declaration of "QXmlAttributes::QXmlAttributes(QXmlAttributes&&)"
I had the same error : function ‘QXmlAttributes::QXmlAttributes(QXmlAttributes&&)’ defaulted on its first declaration with an exception-specification that differs from the implicit declaration ‘QXmlAttributes::QXmlAttributes(QXmlAttributes&&)’
I managed to solve this by following rocommendations from the following link : Cross compiling for Raspberry Error
The solution is to change :
1.Open the /qt5/qtbase/src/xml/sax/qxml.h file
2.Change : "QXmlAttributes(QXmlAttributes &&) Q_DECL_NOTHROW = default"
to "QXmlAttributes(QXmlAttributes &&) = default"
Hope this helps !

cygwin, compiling ncmpcpp: error: ‘postfix_increment_proxy’ is not a class template

i'm trying to compile ncmpcpp on cygwin. i got it to configure after wrestling with dependencies, but when i try to make this error pops up:
In file included from utility/comparators.h:26:0,
from utility/comparators.cpp:22:
./mpdpp.h: In constructor ‘MPD::Directory::Directory(const mpd_directory*)’:
./mpdpp.h:134:62: error: ‘mpd_directory_get_last_modified’ was not declared in this scope
m_last_modified = mpd_directory_get_last_modified(directory);
^
In file included from ./menu.h:26:0,
from ./format.h:26,
from ./settings.h:32,
from utility/comparators.h:27,
from utility/comparators.cpp:22:
/usr/include/boost/range/detail/any_iterator.hpp: At global scope:
/usr/include/boost/range/detail/any_iterator.hpp:131:15: error: ‘postfix_increment_proxy’ is not a class template
class postfix_increment_proxy<
^
/usr/include/boost/range/detail/any_iterator.hpp:176:15: error: ‘writable_postfix_increment_proxy’ is not a class template
class writable_postfix_increment_proxy<
^
Makefile:603: recipe for target 'comparators.o' failed
make[2]: *** [comparators.o] Error 1
make[2]: Leaving directory '/home/aritsune/ncmpcpp/src'
Makefile:455: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/aritsune/ncmpcpp'
Makefile:365: recipe for target 'all' failed
make: *** [all] Error 2
i'm new to compiling from source and this error seems pretty unique. what could be causing it?
It looks like you don't have all the prerequisites required. Always address the errors in the order they occur. The first error occurs in mpdpp.h, on line 134, mpd_directory_get_last_modified. If I Google mpd_directory_get_last_modified the first result is a link to documentation for libmpdclient. Make sure you have this library and your compiler can find it.
As for the Boost error, if you are using version 1.57, it sounds like this bug:
https://svn.boost.org/trac/boost/ticket/10754
which is discussed in this thread:
Can't compile boost/any_iterator.hpp in boost 1.57