Skip to content
Go to file

MEGA Sync Client

Easy automated syncing between your computers and your MEGA cloud drive.

This repository contains all the development history of the official sync client of MEGA:

Supported Platforms

  • Microsoft Windows operating systems
  • OS X
  • Linux

Get the source

git clone --recursive

Windows compilation

  • Visual Studio 2015
  • QT 5.6.3
  • Qt Creator

1.- Prepare QTCreator to use the Visual Studio 2015 toolchain and QT 5.6.3 - 32 bits

2.- Clone or download this repo

3.- Create a folder Release_x32 inside the root of the code that you have just downloaded

4.- Download the required third party libraries from this link:!8tZglCTR!cZ_B39i9YxLgt3_8x9LsOpFhFDHuAh4jdz78IuQTQT4

5.- Uncompress that file into src\MEGASync\mega\bindings\qt

6.- Open the project src/ with QTCreator

7.- Select the folder Release_x32 as the target for Release and Debug builds

8.- Build the project

9.- Copy or move the .dll files from the folder src\MEGASync\mega\bindings\qt\3rdparty\bin to the folder Release_x32\MEGASync

10.- Enjoy!

It's recommended to go to Project -> Run in QTCreator and disable the option Run in terminal

OS X compilation

  • Xcode 8.3
  • QT 5.6.3

1.- Install Xcode in your system

2.- Clone or download this repo

3.- Download the required third party libraries and configuration file (config.h) from this link:!T14B0Y4T!EXGg9dRtacgz9_vCUtVq5tj6C3PBpkOHgXG289EBxBM

4.- Uncompress that file and move the folder 3rdparty into src/MEGASync/mega/bindings/qt/ and the file config.h into src/MEGASync/mega/include/mega/

5.- Run the script to build the project and generate the application bundle for MEGAsync. If you want to generate an Apple disk image (DMG file), add the flag --create-dmg. Build directory is Release_x64

6.- Enjoy!

Linux compilation


  • Using gcc compiler below version 5 might result in compiler errors.
  • Third party requirements vary depending on your system.


First install dependencies. e.g., for a debian/ubuntu with QT >= 5.6 (e.g: Ubuntu 18.04):

sudo apt-get install libzen-dev libmediainfo-dev debhelper qtbase5-dev qt5-qmake libqt5x11extras5-dev libqt5dbus5 libqt5svg5-dev libcrypto++-dev libraw-dev libc-ares-dev libssl-dev libsqlite3-dev zlib1g-dev wget dh-autoreconf cdbs unzip libtool-bin pkg-config qt5-default qttools5-dev-tools libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libmediainfo-dev

for older debian/ubuntu based systems (e.g: Ubuntu 16.04):

sudo apt-get install build-essential autoconf automake m4 libtool libtool-bin qt4-qmake make libqt4-dev libcrypto++-dev libsqlite3-dev libc-ares-dev libcurl4-openssl-dev libssl-dev libraw-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libmediainfo-dev
# Optional, if you wish to build nautilus extension:
sudo apt-get install libnautilus-extension-dev

Addition: for RPM based (e.g: Fedora):

sudo dnf install libtool gcc-c++ c-ares-devel cryptopp-devel openssl-devel qt-devel sqlite-devel zlib-devel LibRaw-devel


cd src
lrelease MEGASync/

Note: when compiling for Fedora/RHEL/CentOS and alike, qmake and lrelease might be missing for qt4. Use qmake-qt4 and lrelease-qt4 instead. Also, adding -q to configure is recommended in order to download and build cryptopp for RHEL and CentOS.

Known Issues

For Solus, c-ares might not compile do to a CFLAG defined by gcc: -D_FORTIFY_SOURCE=2. This issue and its possible solution is described here and