Urbackup 2.1.18 error cross compiling GCC 4.3.6 mount_helper/main.cpp:186: error: ‘O_CLOEXEC’ was not declared in this scope

Description

while all previous had no problem on cross compilation

on x86 (32bit) encountered first issue with sse2 missing

mv -f cryptoplugin/.deps/urbackupsrv-hex.Tpo cryptoplugin/.deps/urbackupsrv-hex.Po
i686-QNAP-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I/opt/QUrBackup/include -D_FILE_OFFSET_BITS=64 -I/opt/QUrBackup/include/fuse -DSQLITE_PREPARE_RETRIES=5 -O2 -I/opt/QUrBackup/include -I/usr/local/include -I/usr/local/include -DLINUX -DSTATIC_PLUGIN -DWITH_FUSEPLUGIN -DVARDIR='"/opt/QUrBackup/var"' -DBINDIR='"/opt/QUrBackup/bin"' -DDATADIR='"/opt/QUrBackup/share"' -DCRYPTOPP_INCLUDE_PREFIX=cryptoplugin -DCRYPTOPP_NO_UNALIGNED_DATA_ACCESS -DCRYPTOPP_NO_BACKWARDS_COMPATIBILITY_562 -O2 -I/opt/QUrBackup/include -MT cryptoplugin/urbackupsrv-hmac.o -MD -MP -MF cryptoplugin/.deps/urbackupsrv-hmac.Tpo -c -o cryptoplugin/urbackupsrv-hmac.o `test -f 'cryptoplugin/hmac.cpp' || echo './'`cryptoplugin/hmac.cpp
mv -f cryptoplugin/.deps/urbackupsrv-hmac.Tpo cryptoplugin/.deps/urbackupsrv-hmac.Po
i686-QNAP-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I/opt/QUrBackup/include -D_FILE_OFFSET_BITS=64 -I/opt/QUrBackup/include/fuse -DSQLITE_PREPARE_RETRIES=5 -O2 -I/opt/QUrBackup/include -I/usr/local/include -I/usr/local/include -DLINUX -DSTATIC_PLUGIN -DWITH_FUSEPLUGIN -DVARDIR='"/opt/QUrBackup/var"' -DBINDIR='"/opt/QUrBackup/bin"' -DDATADIR='"/opt/QUrBackup/share"' -DCRYPTOPP_INCLUDE_PREFIX=cryptoplugin -DCRYPTOPP_NO_UNALIGNED_DATA_ACCESS -DCRYPTOPP_NO_BACKWARDS_COMPATIBILITY_562 -O2 -I/opt/QUrBackup/include -MT cryptoplugin/urbackupsrv-integer.o -MD -MP -MF cryptoplugin/.deps/urbackupsrv-integer.Tpo -c -o cryptoplugin/urbackupsrv-integer.o `test -f 'cryptoplugin/integer.cpp' || echo './'`cryptoplugin/integer.cpp
In file included from cryptoplugin/cpu.h:38,
from cryptoplugin/integer.cpp:30:
/data/x-tools/i686-QNAP-linux-gnu/lib/gcc/i686-QNAP-linux-gnu/4.3.6/include/emmintrin.h:34:3: error: #error "SSE2 instruction set not enabled"
make[2]: *** [cryptoplugin/urbackupsrv-integer.o] Error 1
make[2]: Leaving directory `/SRC/urbackup-server-2.1.18'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/SRC/urbackup-server-2.1.18'
make: *** [all] Error 2

fixed adding to my CXXFLAGS -msse -msse2 -msse3

but now ... stcuk on this

i686-QNAP-linux-gnu-g++ -DHAVE_CONFIG_H -I. -O2 -I/opt/QUrBackup/include -msse -msse2 -msse3 -I/usr/local/include -I/usr/local/include -DOS_FUNC_NO_NET -DOS_FUNC_NO_IFACE_SERVER -DLINUX -DWITH_FUSEPLUGIN -DBINDIR='"/opt/QUrBackup/bin"' -O2 -I/opt/QUrBackup/include -msse -msse2 -msse3 -MT mount_helper/urbackup_mount_helper-main.o -MD -MP -MF mount_helper/.deps/urbackup_mount_helper-main.Tpo -c -o mount_helper/urbackup_mount_helper-main.o `test -f 'mount_helper/main.cpp' || echo './'`mount_helper/main.cpp
mount_helper/main.cpp: In function ‘bool mount_linux_loop(const std::string&)’:
mount_helper/main.cpp:186: error: ‘O_CLOEXEC’ was not declared in this scope
make[2]: *** [mount_helper/urbackup_mount_helper-main.o] Error 1
make[2]: Leaving directory `/SRC/urbackup-server-2.1.18'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/SRC/urbackup-server-2.1.18'
make: *** [all] Error 2

Any idea how to fix it ?

Environment

Qnap for gblic 2.6.1 + Cross compiler GCC 4.3.6 (on debian6)

Assignee

Martin Raiber

Reporter

Stephane Guerithault

Labels

None

Fix versions

Affects versions

Priority

Major
Configure