RHEL Make Error in algorithm.o

Get help for specific problems
Posts: 5
Joined: 12 Mar 2010

scottmeup

I followed the instructions and got the following output from make in
freefilesync. I'm running RHEL 6 64bit. I'm really not sure what to do, can
anyone point me in the right direction? Thanks in advance.

mkdir -p OBJ/FFS_Release_GCC_Make/
g++ -Wall -pipe `pkg-config --cflags gtk+-2.0` -O3 -pthread -std=gnu++0x
-DNDEBUG -DwxUSE_UNICODE -DFFS_LINUX -DZEN_PLATFORM_OTHER
-DWXINTL_NO_GETTEXT_MACRO -I. -include "zen/i18n.h" `wx-config --cxxflags
--debug=no --unicode=yes` `pkg-config --cflags gtkmm-2.4` `pkg-config --cflags
libselinux ` -DHAVE_SELINUX -c algorithm.cpp -o
OBJ/FFS_Release_GCC_Make/algorithm.o
In file included from ./zen/i18n.h:13,
from <command-line>:0:
./zen/utf8.h: In function ‘Function
zen::implementation::utf8ToCodePoint(CharIterator, CharIterator, Function)’:
./zen/utf8.h:180: error: expected primary-expression before ‘’ token
./zen/utf8.h:180: error: expected primary-expression before ‘&’ token
./zen/utf8.h:180: error: ‘ch’ was not declared in this scope
./zen/utf8.h:180: error: expected unqualified-id before ‘bool’
./zen/utf8.h:180: error: unable to deduce ‘auto’ from ‘<expression error>’
./zen/utf8.h:180: error: expected ‘,’ or ‘;’ before ‘bool’
algorithm.cpp:1575: error: expected ‘}’ at end of input
algorithm.cpp:1575: error: expected ‘}’ at end of input
algorithm.cpp: At global scope:
algorithm.cpp:1575: error: expected ‘}’ at end of input
algorithm.cpp:1575: error: expected ‘}’ at end of input
make: *** Error 1
User avatar
Site Admin
Posts: 7212
Joined: 9 Dec 2007

Zenju

No need to double-post:
[404, Invalid URL: https://sourceforge.net/tracker/?func=detail&aid=3510998&group_id=234430&atid=1093080]
Posts: 5
Joined: 12 Mar 2010

scottmeup

My bad - I posted here first then saw the bug tracker as the preferred way of
asking for help. I wasn't sure if the developers kept an eye on this forum.
OK, now for another noob question: I've installed the gcc 4.6.3 libraries on
rhel but I can't find any documentation on how to specify to use them at make
time. Everything I've seen points to specifying them at configure which I
don't think is available for this code. Is there a line I can change in
Makefile to point to the updated gcc libraries?
Thanks in advance.
User avatar
Site Admin
Posts: 7212
Joined: 9 Dec 2007

Zenju

I don't know how things work on RHEL, but on Debian-based Linux gcc is
installed system-wide, so that the makefile uses it implicitly. But before
tackling FFS, you need to take care of wxGTK and boost (see Compile.txt).
Posts: 5
Joined: 12 Mar 2010

scottmeup

Thanks for the quick reply! I've compiled and installed wxGTK and boost, they
went fine with the old compiler. The issue I'm having now is that I installed
the gcc4.6.3 libraries alongside the old ones instead of overwriting them.
FFS make uses the default older libraries and I'm not sure how to configure
the make process to use the location of the newer 4.6.3 libraries.
Thanks for the assistance, I really appreciate it!
User avatar
Site Admin
Posts: 7212
Joined: 9 Dec 2007

Zenju

> compiled and installed wxGTK and boost, they went fine with the old compiler
You may try, but I don't expect libraries compiled with an older version of
gcc to link against FFS compiled with a newer version. Usually all libraries
have to be compiled with the same compiler version.

> configure the make process to use the location of the newer
You probably want to ask for help in a RH forum on how to work with multiple
version of GCC in parallel since I haven't tried this myself. You will have to
modify the makefile and add parameters to the two compile commands containing
"g++". Just some general comment: I expect you can safe yourself a huge amount
of effort (and possible pain) by making the newer version of GCC the system
default, if possible. In this case it should suffice to follow steps in
Compile.txt literallly.