[kokua-dev] Building Linux 64 bit kokua-sl-64

Nicky Perian nickyperian at gmail.com
Sat Apr 8 16:12:22 PDT 2017


https://bitbucket.org/kokua/kokua-sl-64
which is merged with
https://bitbucket.org/lindenlab/viewer64
Where Linden Lab uses autobuild-1.1 build system.
Window 64 build of kokua-sl-64 builds and runs without issue.

Below is a copy paste of the top and bottom of the build log. The middle is
mostly repeats.

Top part of log:
[  3%] Building CXX object
llcommon/CMakeFiles/llcommon.dir/indra_constants.cpp.o
In file included from
/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++config.h:430:0,
                 from /usr/include/c++/4.9/cstring:41,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/linden_common.h:50,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/indra_constants.cpp:26:
/usr/include/x86_64-linux-gnu/c++/4.9/bits/os_defines.h:44:19: error:
missing binary operator before token "("
 #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
                   ^
In file included from /usr/include/c++/4.9/cstring:42:0,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/linden_common.h:50,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/indra_constants.cpp:26:
/usr/include/string.h:39:69: error: missing binary operator before token "("
 #if defined __cplusplus && (__cplusplus >= 199711L || __GNUC_PREREQ (4, 4))
                                                                     ^
In file included from /usr/include/math.h:32:0,
                 from /usr/include/c++/4.9/cmath:44,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/linden_common.h:53,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/indra_constants.cpp:26:
/usr/include/x86_64-linux-gnu/bits/huge_val.h:26:18: error: missing binary
operator before token "("
 #if __GNUC_PREREQ(3,3)
                  ^
/usr/include/x86_64-linux-gnu/bits/huge_val.h:28:20: error: missing binary
operator before token "("
 #elif __GNUC_PREREQ(2,96)
                    ^
In file included from /usr/include/c++/4.9/cmath:44:0,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/linden_common.h:53,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/indra_constants.cpp:26:
/usr/include/math.h:410:42: error: missing binary operator before token "("
 #if defined __USE_ISOC99 && __GNUC_PREREQ(2,97)
**********************************************************
Middle
**********************************************************
Bottom:
/usr/include/stdio.h:826:23: error: variable or field ‘clearerr’ declared
void
 extern void clearerr (FILE *__stream) __THROW;
                       ^
/usr/include/stdio.h:826:23: error: ‘FILE’ was not declared in this scope
/usr/include/stdio.h:826:29: error: ‘__stream’ was not declared in this
scope
 extern void clearerr (FILE *__stream) __THROW;
                             ^
/usr/include/stdio.h:828:18: error: ‘FILE’ was not declared in this scope
 extern int feof (FILE *__stream) __THROW __wur;
                  ^
/usr/include/stdio.h:828:24: error: ‘__stream’ was not declared in this
scope
 extern int feof (FILE *__stream) __THROW __wur;
                        ^
/usr/include/stdio.h:830:20: error: ‘FILE’ was not declared in this scope
 extern int ferror (FILE *__stream) __THROW __wur;
                    ^
/usr/include/stdio.h:830:26: error: ‘__stream’ was not declared in this
scope
 extern int ferror (FILE *__stream) __THROW __wur;
                          ^
In file included from /usr/include/libio.h:56:0,
                 from /usr/include/stdio.h:74,
                 from /usr/include/c++/4.9/cstdio:42,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/linden_common.h:55,
                 from
/home/nicky/p64/kokua-sl-64/indra/llcommon/llapp.cpp:27:
/usr/include/stdio.h:942:1: error: expected declaration before ‘}’ token
 __END_DECLS
 ^
llcommon/CMakeFiles/llcommon.dir/build.make:134: recipe for target
'llcommon/CMakeFiles/llcommon.dir/llapp.cpp.o' failed
make[2]: *** [llcommon/CMakeFiles/llcommon.dir/llapp.cpp.o] Error 1
CMakeFiles/Makefile2:358: recipe for target
'llcommon/CMakeFiles/llcommon.dir/all' failed
make[1]: *** [llcommon/CMakeFiles/llcommon.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
ERROR: building configuration {'default': False, 'configure': {'command':
None, 'options': ['-G', 'Unix Makefiles'], 'filters': None, 'arguments':
None}, 'name': 'ReleaseOS', 'build': {'command': 'make', 'options': ['-j',
'7'], 'filters': None, 'arguments': None}} returned 2
For more information: try re-running your command with --verbose or --debug

With autobuild-1.1 is a new viewer-build-variables repo.

The relevant parts of viewer-build-variables/variables are pasted below:
# Mac and Linux base macros
LL_BUILD_POSIX_BASE_MACROS="-DLL_OS_DRAGDROP_ENABLED=1 -DCARES_STATICLIB
-DLIB_NDOF=1"

# Linux
LL_BUILD_LINUX_BASE_MACROS="-DLL_LINUX=1 -D_REENTRANT -DEXTERNAL_TOS
-DAPPID=kokua $LL_BUILD_POSIX_BASE_MACROS"
LL_BUILD_LINUX_BASE_SWITCHES="-std=gnu++11 -g -fPIC
-Wno-unused-local-typedefs -Wno-deprecated-declarations -DLL_LINUX=1
-D_REENTRANT -fexceptions -fno-math-errno -fno-strict-aliasing
-fsigned-char -mmmx -msse -msse2 -mfpmath=sse -pthread"
LL_BUILD_LINUX_BASE="$LL_BUILD_LINUX_BASE_SWITCHES
$LL_BUILD_LINUX_BASE_MACROS"

Trying this build is a bit in front of Linden Lab and I've been told we are
on our own with this attempt.

I searched Stackoverflow and found a reference that this is likely a C++xx
mismatch issue. The compile switch has "-std=gnu++11".

Does anyone have clue what is happening?

Nicky
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kokuaviewer.org/pipermail/kokua-dev-kokuaviewer.org/attachments/20170408/992c9c81/attachment.htm>


More information about the kokua-dev mailing list