meganz / MEGAsync

Easy automated syncing between your computers and your MEGA Cloud Drive
Other
1.61k stars 278 forks source link

Error compiling on ARM - googlebreakpad - sys_mmap2 not declared #310

Open klode82 opened 5 years ago

klode82 commented 5 years ago

I'm working on build MEGASync on my Ubuntu Xenial, on ARM computer (Allwinner A64+ - Pine64 Single Board).

The commands configure, qmake works fine, but when I send make command I get this:

cd MEGASync/ && ( test -e Makefile || /usr/lib/aarch64-linux-gnu/qt5/bin/qmake /home/leocric/src/megasync-4.0.2/MEGASync/MEGASync.pro -o Makefile ) && make -f Makefile make[1]: Entering directory '/home/leocric/src/megasync-4.0.2/MEGASync' g++ -c -pipe -g -O2 -Wall -W -D_REENTRANT -DQT_DISABLE_DEPRECATED_BEFORE=0x000000 -DHAVE_LIBUV -DUSE_MEDIAINFO -DUNICODE -DHAVE_LIBRAW -DHAVE_FFMPEG -DUSE_QT -DMEGA_QT_LOGGING -DUSE_SQLITE -DUSE_CRYPTOPP -DENABLE_SYNC -DENABLE_CHAT -DNDEBUG -DUSE_DBUS -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_DBUS_LIB -DQT_SVG_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtSvg -I/usr/include/qt4/QtDBus -I/usr/include/qt4 -Igui -Igui/linux -I/home/leocric/src/megasync-4.0.2/MEGASync/mega/bindings/qt/../..//bindings/qt/3rdparty/include/libuv -Imega/include -Imega/bindings/qt -Imega/bindings/qt/3rdparty/include -Imega/include/mega/posix -Icontrol -Iplatform -Igoogle_breakpad -Iqtlockedfile -I. -I. -I. -o CrashHandler.o control/CrashHandler.cpp In file included from ./gui/TransferManager.h:6:0, from ./MegaApplication.h:16, from control/CrashHandler.cpp:7: mega/include/megaapi.h:3132:35: warning: type qualifiers ignored on function return type [-Wignored-qualifiers] virtual const int getNumber() const; ^ In file included from ./gui/LocalCleanScheduler.h:5:0, from ./gui/SettingsDialog.h:17, from ./gui/InfoDialog.h:10, from ./MegaApplication.h:18, from control/CrashHandler.cpp:7: ./gui/QMegaMessageBox.h:9:48: warning: unused parameter ‘parent’ [-Wunused-parameter] explicit QMegaMessageBox(QWidget *parent = 0) {}; ^ In file included from control/CrashHandler.cpp:7:0: ./MegaApplication.h: In constructor ‘TransferMetaData::TransferMetaData(int, int, int, QString)’: ./MegaApplication.h:66:9: warning: ‘TransferMetaData::transferDirection’ will be initialized after [-Wreorder] int transferDirection; ^ ./MegaApplication.h:58:9: warning: ‘int TransferMetaData::totalTransfers’ [-Wreorder] int totalTransfers; ^ ./MegaApplication.h:52:5: warning: when initialized here [-Wreorder] TransferMetaData(int direction, int total = 0, int pending = 0, QString path = QString()) ^ ./MegaApplication.h:67:13: warning: ‘TransferMetaData::localPath’ will be initialized after [-Wreorder] QString localPath; ^ ./MegaApplication.h:60:9: warning: ‘int TransferMetaData::totalFiles’ [-Wreorder] int totalFiles; ^ ./MegaApplication.h:52:5: warning: when initialized here [-Wreorder] TransferMetaData(int direction, int total = 0, int pending = 0, QString path = QString()) ^ In file included from google_breakpad/client/linux/minidump_writer/linux_dumper.h:47:0, from google_breakpad/client/linux/minidump_writer/minidump_writer.h:40, from google_breakpad/client/linux/handler/exception_handler.h:44, from control/CrashHandler.cpp:15: google_breakpad/common/memory.h: In member function ‘uint8_t* google_breakpad::PageAllocator::GetNPages(unsigned int)’: google_breakpad/common/memory.h:118:59: error: ‘sys_mmap2’ was not declared in this scope MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); ^ google_breakpad/common/memory.h: In member function ‘void google_breakpad::PageAllocator::FreeAll()’: google_breakpad/common/memory.h:136:50: error: ‘sys_munmap’ was not declared in this scope sys_munmap(cur, cur->num_pages * page_size_); ^ In file included from google_breakpad/client/linux/minidump_writer/minidump_writer.h:40:0, from google_breakpad/client/linux/handler/exception_handler.h:44, from control/CrashHandler.cpp:15: google_breakpad/client/linux/minidump_writer/linux_dumper.h: At global scope: google_breakpad/client/linux/minidump_writer/linux_dumper.h:63:18: error: ‘elf_aux_entry’ was not declared in this scope typedef typeof(((elf_aux_entry*) 0)->a_un.a_val) elf_aux_val_t; ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:63:32: error: expected primary-expression before ‘)’ token typedef typeof(((elf_aux_entry*) 0)->a_un.a_val) elf_aux_val_t; ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:63:34: error: expected ‘)’ before numeric constant typedef typeof(((elf_aux_entry*) 0)->a_un.a_val) elf_aux_val_t; ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:63:63: error: expected ‘)’ before ‘;’ token typedef typeof(((elf_aux_entry*) 0)->a_un.a_val) elf_aux_val_t; ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:63:63: warning: ‘typedef’ was ignored in this declaration google_breakpad/client/linux/minidump_writer/linux_dumper.h:133:25: error: ‘elf_aux_val_t’ was not declared in this scope const wasteful_vector<elf_aux_val_t>& auxv() { return auxv_; } ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:133:38: error: template argument 1 is invalid const wasteful_vector<elf_aux_val_t>& auxv() { return auxv_; } ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:211:19: error: ‘elf_aux_val_t’ was not declared in this scope wasteful_vector<elf_aux_val_t> auxv_; ^ google_breakpad/client/linux/minidump_writer/linux_dumper.h:211:32: error: template argument 1 is invalid wasteful_vector<elf_aux_val_t> auxv_; ^ In file included from control/CrashHandler.cpp:15:0: google_breakpad/client/linux/handler/exception_handler.h:197:26: error: field ‘float_state’ has incomplete type ‘google_breakpad::_libc_fpstate’ struct _libc_fpstate float_state; ^ google_breakpad/client/linux/handler/exception_handler.h:197:12: note: forward declaration of ‘struct google_breakpad::_libc_fpstate’ struct _libc_fpstate float_state; ^ control/CrashHandler.cpp: In function ‘void signal_handler(int, siginfo_t*, void*)’: control/CrashHandler.cpp:143:50: error: ‘O_WRONLY’ was not declared in this scope int dump_file = open(dump_path.c_str(), O_WRONLY | O_CREAT, 0400); ^ control/CrashHandler.cpp:143:61: error: ‘O_CREAT’ was not declared in this scope int dump_file = open(dump_path.c_str(), O_WRONLY | O_CREAT, 0400); ^ control/CrashHandler.cpp:143:74: error: ‘open’ was not declared in this scope int dump_file = open(dump_path.c_str(), O_WRONLY | O_CREAT, 0400); ^ control/CrashHandler.cpp:260:62: warning: ignoring return value of ‘ssize_t write(int, const void*, size_t)’, declared with attribute warn_unused_result [-Wunused-result] write(dump_file, oss.str().c_str(), oss.str().size()); ^ Makefile:3221: recipe for target 'CrashHandler.o' failed make[1]: *** [CrashHandler.o] Error 1 make[1]: Leaving directory '/home/leocric/src/megasync-4.0.2/MEGASync' Makefile:42: recipe for target 'sub-MEGASync-make_first' failed make: *** [sub-MEGASync-make_first] Error 2 Is there a way to resolve this issue?

Vascom commented 5 years ago

Can be compiled only for 32-bit ARM. See #303