Discussion:
[OpenSCAD] compiling openscad from source
seandepagnier
2018-10-08 01:05:21 UTC
Permalink
I need to compile openscad, because the version I have from apt is 2014. I
also cannot find any binaries for my platform (armv7) and I will be moving
to aarch64 soon which is even less likely.

I have tried with both qt5 and qt4 without success. With qt5 the build
error:

g++ -c -pipe -DSTACKSIZE=8388608 -fno-strict-aliasing -std=c++0x -O2
-I/usr/lib/arm-linux-gnueabihf/libzip/include -I/usr/include/libxml2
-I/usr/include/freetype2 -I/usr/include/freetype2 -I/usr/include/harfbuzz
-I/usr/include/glib-2.0 -I/usr/lib/arm-linux-gnueabihf/glib-2.0/include
-DEIGEN_DONT_ALIGN -frounding-math -std=c++0x -D_REENTRANT -Wall -W
-Wno-unused-local-typedefs -fPIE -DOPENSCAD_VERSION=2018.10.05
-DOPENSCAD_SHORTVERSION=2018.10.05 -DOPENSCAD_YEAR=2018.0
-DOPENSCAD_MONTH=10.0 -DOPENSCAD_DAY=05.0 -DDEBUG -DSTACKSIZE=8388608
-DUSE_SCINTILLA_EDITOR -DENABLE_LIBZIP -DENABLE_OPENCSG -DENABLE_CGAL
-DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_OPENGL_LIB -DQT_MULTIMEDIA_LIB
-DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_CONCURRENT_LIB -DQT_GUI_LIB
-DQT_CORE_LIB -I/usr/lib/arm-linux-gnueabihf/qt5/mkspecs/linux-g++
-I/media/pi/sean/openscad -I../src -I../src/ext/libtess2/Include -isystem
/usr/include/arm-linux-gnueabihf/qt5 -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtPrintSupport -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtMultimedia -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtWidgets -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtNetwork -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtConcurrent -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtGui -isystem
/usr/include/arm-linux-gnueabihf/qt5/QtCore -Iobjects -isystem
/usr/include/eigen3 -I. -o objects/QGLView.o ../src/QGLView.cc
In file included from
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengl.h:92:0,
from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/qgl.h:47,
from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/QGLWidget:1,
from ../src/QGLView.h:9,
from ../src/QGLView.cc:28:
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:402:9: error:
‘khronos_int64_t’ does not name a type
typedef khronos_int64_t GLint64;
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:403:9: error:
‘khronos_uint64_t’ does not name a type
typedef khronos_uint64_t GLuint64;
^
In file included from
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengl.h:92:0,
from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/qgl.h:47,
from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/QGLWidget:1,
from ../src/QGLView.h:9,
from ../src/QGLView.cc:28:
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:995:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum
target, GLeg
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:996:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC)
(GLenum ta
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1027:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program,
GLsizei bu
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1028:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program,
GLenum binary
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1039:16: error:
expected ‘)’ before ‘*’ token
typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum
access);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1039:16: error:
expected initializer before ‘*’ token
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1040:20: error:
expected ‘)’ before ‘*’ token
typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1041:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target,
GLenum pna
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1089:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint
level, GLen
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1090:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint
level, G
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1091:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target,
GLint leve
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1092:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum
target, GLint l
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1093:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum
target, GLin
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1094:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target,
GLenum atta
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1131:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1132:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n,
const GLuint
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1133:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint
*arrays);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1134:20: error:
expected ‘)’ before ‘*’ token
typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1314:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint
destinationTextu
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1324:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC)
(GLenum tar
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1325:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC)
(void);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1345:17: error:
expected ‘)’ before ‘*’ token
typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition,
GLbitfield
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1346:20: error:
expected ‘)’ before ‘*’ token
typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1347:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1348:17: error:
expected ‘)’ before ‘*’ token
typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync,
GLbitfield
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1349:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield
flags, G
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1350:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname,
GLint64 *para
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1351:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum
pname, GLsi
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1404:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint
object, GLs
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1405:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint
object,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1427:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target,
GLsizei n
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1437:16: error:
expected ‘)’ before ‘*’ token
typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target,
GLintptr off
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1437:16: error:
expected initializer before ‘*’ token
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1438:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum
target, GLint
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1448:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)
(GLenum targe
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1449:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC)
(GLenum targ
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1460:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src,
GLint index);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1461:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const
GLenum *l
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1462:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target,
GLuint index,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1487:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint
*ids);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1488:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const
GLuint *ids)
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1489:20: error:
expected ‘)’ before ‘*’ token
typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1490:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint
id);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1491:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1492:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum
pname, GLi
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1493:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id,
GLenum pname,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1510:17: error:
expected ‘)’ before ‘*’ token
typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1511:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y,
GLsizei width
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1512:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program,
GLint locatio
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1513:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program,
GLint locatio
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1634:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target,
GLsizei levels,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1635:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target,
GLsizei levels,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1636:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target,
GLsizei levels,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1637:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture,
GLenum tar
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1638:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture,
GLenum tar
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1639:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture,
GLenum tar
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1706:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC)
(GLenum targe
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1707:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC)
(GLenum targ
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1721:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1722:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum
operation);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1736:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum
*bufs);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1746:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNDRAWARRAYSINSTANCEDNVPROC) (GLenum mode,
GLint first,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1747:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNDRAWELEMENTSINSTANCEDNVPROC) (GLenum mode,
GLsizei cou
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1782:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNBLITFRAMEBUFFERNVPROC) (GLint srcX0, GLint
srcY0, GLin
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1791:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNRENDERBUFFERSTORAGEMULTISAMPLENVPROC) (
GLenum target,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1805:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNVERTEXATTRIBDIVISORNVPROC) (GLuint index,
GLuint divis
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1814:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1877:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf
ref);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1894:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num,
GLsizei size
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1895:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint
driverContro
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1896:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint
driverControl);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1897:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint
driverControl)
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1913:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures,
GLint max
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1914:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers,
GLint maxBu
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1915:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint
*renderbuffers,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1916:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint
*framebuffers, G
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1917:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint
texture,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1918:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum
target,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1919:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target,
GLint lev
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1920:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum
target, GLvoid
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1932:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders,
GLint maxSh
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1933:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs,
GLint max
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1934:20: error:
expected ‘)’ before ‘*’ token
typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint
program);
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1935:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint
program,
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1955:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y,
GLuint wid
^
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengles2ext.h:1956:15: error:
expected ‘)’ before ‘*’ token
typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield
preserveMask);
^
In file included from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/qgl.h:47:0,
from
/usr/include/arm-linux-gnueabihf/qt5/QtOpenGL/QGLWidget:1,
from ../src/QGLView.h:9,
from ../src/QGLView.cc:28:
/usr/include/arm-linux-gnueabihf/qt5/QtGui/qopengl.h:98:17: error:
conflicting declaration ‘typedef GLfloat GLdouble’
typedef GLfloat GLdouble;
^
In file included from ../src/system-gl.h:4:0,
from ../src/QGLView.h:3,
from ../src/QGLView.cc:28:
/usr/include/GL/glew.h:283:16: note: previous declaration as ‘typedef double
GLdouble’
typedef double GLdouble;
^
Makefile:2477: recipe for target 'objects/QGLView.o' failed
make: *** [objects/QGLView.o] Error 1




With qt4:

g++ -Wl,-O1 -o openscad objects/AST.o objects/ModuleInstantiation.o
objects/Assignment.o objects/expr.o objects/function.o objects/module.o
objects/UserModule.o objects/annotation.o objects/libsvg.o objects/circle.o
objects/ellipse.o objects/line.o objects/polygon.o objects/polyline.o
objects/rect.o objects/group.o objects/svgpage.o objects/path.o
objects/shape.o objects/transformation.o objects/util.o
objects/version_check.o objects/ProgressWidget.o objects/linalg.o
objects/Camera.o objects/handle_dep.o objects/value.o objects/stackcheck.o
objects/func.o objects/localscope.o objects/feature.o objects/node.o
objects/context.o objects/builtincontext.o objects/modcontext.o
objects/evalcontext.o objects/csgnode.o objects/CSGTreeNormalizer.o
objects/CSGTreeEvaluator.o objects/Geometry.o objects/Polygon2d.o
objects/clipper-utils.o objects/polyset-utils.o objects/GeometryUtils.o
objects/polyset.o objects/polyset-gl.o objects/csgops.o objects/transform.o
objects/color.o objects/primitives.o objects/projection.o objects/cgaladv.o
objects/surface.o objects/control.o objects/render.o objects/text.o
objects/dxfdata.o objects/dxfdim.o objects/offset.o objects/linearextrude.o
objects/rotateextrude.o objects/printutils.o objects/fileutils.o
objects/progress.o objects/parsersettings.o objects/boost-utils.o
objects/PlatformUtils.o objects/LibraryInfo.o objects/nodedumper.o
objects/NodeVisitor.o objects/GeometryEvaluator.o objects/ModuleCache.o
objects/GeometryCache.o objects/Tree.o objects/DrawingCallback.o
objects/FreetypeRenderer.o objects/FontCache.o objects/settings.o
objects/rendersettings.o objects/highlighter.o objects/Preferences.o
objects/OpenCSGWarningDialog.o objects/editor.o objects/GLView.o
objects/QGLView.o objects/AutoUpdater.o objects/hash.o objects/GroupModule.o
objects/FileModule.o objects/StatCache.o objects/builtin.o objects/calc.o
objects/export.o objects/export_stl.o objects/export_amf.o
objects/export_off.o objects/export_dxf.o objects/export_svg.o
objects/export_nef.o objects/export_png.o objects/import.o
objects/import_stl.o objects/import_off.o objects/import_svg.o
objects/import_amf.o objects/renderer.o objects/colormap.o
objects/ThrownTogetherRenderer.o objects/svg.o objects/OffscreenView.o
objects/fbo.o objects/system-gl.o objects/imageutils.o objects/openscad.o
objects/mainwin.o objects/OpenSCADApp.o objects/WindowManager.o
objects/UIUtils.o objects/Dock.o objects/FontListDialog.o
objects/FontListTableView.o objects/launchingscreen.o objects/legacyeditor.o
objects/LibraryInfoDialog.o objects/comment.o objects/ParameterWidget.o
objects/parameterobject.o objects/parameterextractor.o
objects/parameterspinbox.o objects/parametercombobox.o
objects/parameterslider.o objects/parametercheckbox.o
objects/parametertext.o objects/parametervector.o objects/groupwidget.o
objects/parameterset.o objects/parametervirtualwidget.o
objects/ignoreWheelWhenNotFocused.o objects/QWordSearchField.o
objects/QSettingsCached.o objects/lodepng.o objects/clipper.o
objects/bucketalloc.o objects/dict.o objects/geom.o objects/mesh.o
objects/priorityq.o objects/sweep.o objects/tess.o
objects/imageutils-lodepng.o objects/OffscreenContextGLX.o
objects/OpenCSGRenderer.o objects/cgalutils.o objects/cgalutils-applyops.o
objects/cgalutils-project.o objects/cgalutils-tess.o
objects/cgalutils-polyhedron.o objects/CGALCache.o objects/CGALRenderer.o
objects/CGAL_Nef_polyhedron.o objects/cgalworker.o objects/Polygon2d-CGAL.o
objects/import_nef.o objects/PlatformUtils-posix.o objects/scintillaeditor.o
objects/scadlexer.o objects/lexer.o objects/comment_lexer.o objects/parser.o
objects/comment_parser.o objects/moc_ProgressWidget.o objects/moc_QGLView.o
objects/moc_MainWindow.o objects/moc_OpenSCADApp.o
objects/moc_WindowManager.o objects/moc_Preferences.o
objects/moc_OpenCSGWarningDialog.o objects/moc_AboutDialog.o
objects/moc_FontListDialog.o objects/moc_FontListTableView.o
objects/moc_highlighter.o objects/moc_editor.o objects/moc_Dock.o
objects/moc_AutoUpdater.o objects/moc_launchingscreen.o
objects/moc_legacyeditor.o objects/moc_LibraryInfoDialog.o
objects/moc_ParameterWidget.o objects/moc_parametervirtualwidget.o
objects/moc_parameterspinbox.o objects/moc_parametercombobox.o
objects/moc_parameterslider.o objects/moc_parametercheckbox.o
objects/moc_parametertext.o objects/moc_parametervector.o
objects/moc_groupwidget.o objects/moc_ignoreWheelWhenNotFocused.o
objects/moc_QWordSearchField.o objects/moc_cgalworker.o
objects/moc_scintillaeditor.o objects/qrc_openscad.o
-L/usr/lib/arm-linux-gnueabihf -L/usr/X11R6/lib
-L/usr/lib/arm-linux-gnueabihf -lqscintilla2 -lzip -lz -lxml2 -lfontconfig
-lfreetype -lharfbuzz -lglib-2.0 -lboost_thread -lboost_program_options
-lboost_filesystem -lboost_system -lboost_regex -lGLEW -lopencsg -lCGAL
-lmpfr -lgmp -lQtMultimedia -lQtOpenGL -lQtGui -lQtCore -lGL -lGLU -lX11
-lpthread
/usr/bin/ld: cannot find -lQtMultimedia
collect2: error: ld returned 1 exit status
Makefile:527: recipe for target 'openscad' failed
make: *** [openscad] Error 1


There is no qtmultimedia for qt4 available in apt. Should I build qt4 from
source as well?

Thanks for any suggestions.




--
Sent from: http://forum.openscad.org/
Jamie Bainbridge
2018-10-08 01:16:57 UTC
Permalink
Post by seandepagnier
I need to compile openscad, because the version I have from apt is 2014. I
also cannot find any binaries for my platform (armv7) and I will be moving
to aarch64 soon which is even less likely.
There is talk of compiling for armv7 (raspbian on Raspberry Pi) here:
https://www.raspberrypi.org/forums/viewtopic.php?t=191566

Note one person found it easier to just use www.openscad.net in
Chromium. If you're not staying on armv7 so long, that might be an
easier solution for you too.

For aarch64, Debian stable and unstable have arm64 packages of latest
OpenSCAD stable (2015). If you're using Debian then the work is done
for you.

Jamie
Torsten Paul
2018-10-08 09:21:25 UTC
Permalink
Post by seandepagnier
I need to compile openscad, because the version I have from apt is 2014. I
also cannot find any binaries for my platform (armv7) and I will be moving
to aarch64 soon which is even less likely.
There are Debian/aarch64 builds on the official OBS repo, but I have
no idea if they work though, as I have no means to test.

https://build.opensuse.org/package/show/home:t-paul/OpenSCAD
Post by seandepagnier
I have tried with both qt5 and qt4 without success. With qt5 the build
[...]
Post by seandepagnier
/usr/include/GL/glew.h:283:16: note: previous declaration as ‘typedef double
GLdouble’
typedef double GLdouble;
^
That is the normal error on systems that do not support Desktop
OpenGL but only GLES. It might be possible to compile Qt in a way
that it works with OpenSCAD, but as long as GLES is enabled, this
will conflict with other code in OpenSCAD.
Post by seandepagnier
/usr/bin/ld: cannot find -lQtMultimedia
collect2: error: ld returned 1 exit status
Makefile:527: recipe for target 'openscad' failed
make: *** [openscad] Error 1
There is no qtmultimedia for qt4 available in apt. Should I build qt4 from
source as well?
In general, QtMultimedia should be available in Qt4 too. I don't
know what the reason for the build error is. Maybe Qt4 is indeed
built without the multimedia support or it's not included for some
other reason. I can't find any mention of a separate package for
Qt4 (except on old Ubuntu where it's in qt-mobility or so?).

Another possibility is that it still drags in some settings from
Qt5 builds, so the simplest test would be to ensure a really clean
build against Qt4.

ciao,
Torsten.
sean d'epagnier
2018-10-08 13:58:38 UTC
Permalink
Post by Torsten Paul
There are Debian/aarch64 builds on the official OBS repo, but I have
no idea if they work though, as I have no means to test.
https://build.opensuse.org/package/show/home:t-paul/OpenSCAD
I will find out in a few weeks.
Post by Torsten Paul
Post by seandepagnier
I have tried with both qt5 and qt4 without success. With qt5 the build
[...]
Post by seandepagnier
/usr/include/GL/glew.h:283:16: note: previous declaration as ‘typedef double
GLdouble’
typedef double GLdouble;
^
That is the normal error on systems that do not support Desktop
OpenGL but only GLES. It might be possible to compile Qt in a way
that it works with OpenSCAD, but as long as GLES is enabled, this
will conflict with other code in OpenSCAD.
This system does support Desktop OpenGL. Most armv7 systems support
desktop opengl, if only in software.

I think with Qt 5 they make an assumption that on armv7 systems, the user
wants GLES, and defines GLdouble to 32bit floats. This is usually
much faster because of supported hardware acceleration but doesn't help me.

I don't need accelerated graphics to make use of openscad. I can maybe try
to build qt5 from source and tweak compile flags to fix this.
Post by Torsten Paul
In general, QtMultimedia should be available in Qt4 too. I don't
know what the reason for the build error is. Maybe Qt4 is indeed
built without the multimedia support or it's not included for some
other reason. I can't find any mention of a separate package for
Qt4 (except on old Ubuntu where it's in qt-mobility or so?).
Another possibility is that it still drags in some settings from
Qt5 builds, so the simplest test would be to ensure a really clean
build against Qt4.
I built first with qt4 without qt5 installed, when it failed, tried qt5.

I think it's as you found, it's just not built with multimedia support
for qt4 and no package exists, and the library is not there.

Is it possible to build openscad without qtmultimedia support?

From here, I must try to build qt4 and/or qt5 from source unless there
are any other ideas. This can take several days since the machine is
usable while compiling. I compile when I'm sleeping so I don't react to errors
until the next day.

Not sure how this will affect a release for armv7 in the future,
maybe it explains why the version in apt is 2014 and so old?

Thanks,
Sean
Torsten Paul
2018-10-08 19:13:56 UTC
Permalink
Post by sean d'epagnier
Is it possible to build openscad without qtmultimedia support?
No, and there's probably no one who is going to put effort into
that as Qt4 is really deprecated and there are no safe-guards
against Qt4 compile issues as all official builds are Qt5 now.

So the more promising way going forward would be Qt5.

(Maybe also enable QGamepad, this might be usable soon :-)

I'd be interested to get a (docker based?) cross-build working
sometime, but that's not going to happen very soon.

ciao,
Torsten.

Loading...