| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 libadblockplus | 1 libadblockplus |
| 2 ============== | 2 ============== |
| 3 | 3 |
| 4 A C++ library offering the core functionality of Adblock Plus. | 4 A C++ library offering the core functionality of Adblock Plus. |
| 5 | 5 |
| 6 Getting/updating the dependencies | 6 Getting/updating the dependencies |
| 7 --------------------------------- | 7 --------------------------------- |
| 8 | 8 |
| 9 libadblockplus has dependencies that aren't part of this repository. They are | 9 libadblockplus has dependencies that aren't part of this repository. They are |
| 10 retrieved and updated during the build process, but you can also manually update | 10 retrieved and updated during the build process, but you can also manually update |
| 11 them by running the following: | 11 them by running the following: |
| 12 | 12 |
| 13 ./ensure_dependencies.py | 13 ./ensure_dependencies.py |
| 14 | 14 |
| 15 Building | 15 Building |
| 16 -------- | 16 -------- |
| 17 | |
| 18 ### Supported target platforms and prerequisites | |
| 19 | |
| 20 You need a C++11 compatible compiler to build libadblockplus. | |
| 21 | |
| 22 Win32: | |
| 23 * Microsoft Visual Studio 2010, 2012 | |
| 24 | |
| 25 Linux: | |
| 26 * g++ 5.2 | |
| 27 | |
| 28 Mac: | |
| 29 * clang 3.6 for OS X | |
| 30 | |
| 31 Android: | |
| 32 * The host system should be Linux or OS X | |
| 33 * android-ndk-r9, android-ndk-r10c. You can download the latter for [OS X](http: //dl.google.com/android/ndk/android-ndk-r10c-darwin-x86_64.bin), [Linux 32](http ://dl.google.com/android/ndk/android-ndk-r10c-linux-x86.bin), [Linux 64](http:// dl.google.com/android/ndk/android-ndk-r10c-linux-x86_64.bin). | |
| 34 * g++ multilib | |
| 35 | |
| 36 If you have a compilation issue with another compiler please [create an issue](h ttps://issues.adblockplus.org/). | |
| 17 | 37 |
| 18 ### Unix | 38 ### Unix |
| 19 | 39 |
| 20 All you need is Python 2.7 and Make: | 40 All you need is Python 2.7 and Make: |
| 21 | 41 |
| 22 make | 42 make |
| 23 | 43 |
| 24 The default target architecture is x64. On a 32 bit system, run: | 44 The default target architecture is x64. On a 32 bit system, run: |
| 25 | 45 |
| 26 make ARCH=ia32 | 46 make ARCH=ia32 |
| (...skipping 17 matching lines...) Expand all Loading... | |
| 44 | 64 |
| 45 * Execute `createsolution.bat` to generate project files, this will create | 65 * Execute `createsolution.bat` to generate project files, this will create |
| 46 `build\ia32\libadblockplus.sln` (solution for the 32 bit build) and | 66 `build\ia32\libadblockplus.sln` (solution for the 32 bit build) and |
| 47 `build\x64\libadblockplus.sln` (solution for the 64 bit build). Unfortunately, | 67 `build\x64\libadblockplus.sln` (solution for the 64 bit build). Unfortunately, |
| 48 V8 doesn't support creating both from the same project files. | 68 V8 doesn't support creating both from the same project files. |
| 49 * Open `build\ia32\libadblockplus.sln` or `build\x64\libadblockplus.sln` in | 69 * Open `build\ia32\libadblockplus.sln` or `build\x64\libadblockplus.sln` in |
| 50 Visual Studio and build the solution there. Alternatively you can use the | 70 Visual Studio and build the solution there. Alternatively you can use the |
| 51 `msbuild` command line tool, e.g. run `msbuild /m build\ia32\libadblockplus.sln` | 71 `msbuild` command line tool, e.g. run `msbuild /m build\ia32\libadblockplus.sln` |
| 52 from the Visual Studio Developer Command Prompt to create a 32 bit debug build. | 72 from the Visual Studio Developer Command Prompt to create a 32 bit debug build. |
| 53 | 73 |
| 54 ### Supported compilers | |
| 55 | |
| 56 You need a C++11 compatible compiler to build libadblockplus. | |
| 57 | |
| 58 The compilation was tested with the following compilers: | |
| 59 * g++ 4.8 | |
| 60 * Microsoft Visual Studio 2010, 2012 | |
| 61 * clang 3.4 for Android (from android-ndk-r9, r10c) | |
|
sergei
2016/06/08 15:32:35
It's actually can be quite tricky to find the link
sergei
2016/06/08 15:32:35
It also makes sense to say may be after the list o
sergei
2016/06/10 11:36:01
Yeah, but unfortunately we cannot achieve it right
sergei
2016/06/10 11:36:01
Honestly I personally have not tried to compile it
anton
2016/06/14 07:16:46
i've tried to compile with gcc-4.9 from r11c symli
| |
| 62 * clang 3.6 for OS X | |
| 63 | |
| 64 If you have a question about another compiler please [create an issue](https://i ssues.adblockplus.org/). | |
| 65 | |
| 66 ### Building for Android | 74 ### Building for Android |
|
sergei
2016/06/08 15:32:35
I think it should be before "Supported compilers"
anton
2016/06/14 07:16:46
Done.
anton
2016/06/14 07:16:46
Done.
| |
| 67 | 75 |
| 68 First set ANDROID_NDK_ROOT environment variable to your Android NDK directory. | 76 First set ANDROID_NDK_ROOT environment variable to your Android NDK directory. |
|
sergei
2016/06/08 15:32:35
It would be better if you could include an example
sergei
2016/06/08 15:32:35
There is additional space character between NDK an
sergei
2016/06/10 11:36:01
Fair enough, albeit I guess nobody is trying to co
anton
2016/06/14 07:16:46
Done.
anton
2016/06/14 07:16:46
Not sure it's needed as i assume people trying to
| |
| 69 | 77 |
| 70 To build for *x86* arch run: | 78 To build for *x86* arch run: |
| 71 | 79 |
| 72 make android_x86 | 80 make android_x86 |
| 73 | 81 |
| 74 To build for *arm* arch run: | 82 To build for *arm* arch run: |
| 75 | 83 |
| 76 make android_arm | 84 make android_arm |
| 77 | 85 |
| 78 Usage | 86 Usage |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 221 | 229 |
| 222 ### Unix | 230 ### Unix |
| 223 | 231 |
| 224 The shell is automatically built by `make`, you can run it as follows: | 232 The shell is automatically built by `make`, you can run it as follows: |
| 225 | 233 |
| 226 build/out/abpshell | 234 build/out/abpshell |
| 227 | 235 |
| 228 ### Windows | 236 ### Windows |
| 229 | 237 |
| 230 Just run the project *abpshell*. | 238 Just run the project *abpshell*. |
| LEFT | RIGHT |