diff --git a/doc/Building_targets.md b/doc/Building_targets.md index 80a33fcaa..4773c9336 100644 --- a/doc/Building_targets.md +++ b/doc/Building_targets.md @@ -4,7 +4,6 @@ KOReader is available for multiple platforms. Here are instructions to build ins These instructions are intended for a Linux OS. MacOS and Windows users are suggested to develop in a Linux VM. - ## Prerequisites This instructions asume that you [have a development environment ready to run](Building.md) KOReader. If not then please install common prerequisites first. @@ -27,13 +26,7 @@ If you want to use your own installed tools please make sure that you have the * Cross compile toolchains are available for Ubuntu users through these commands: -##### Kindle and Cervantes - -``` -sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi -``` - -##### Kobo and Ubuntu Touch +##### Ubuntu Touch ``` sudo apt-get install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf @@ -46,13 +39,16 @@ block you from building. Remove them if you get the following ld error /usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lglib-2.0 ``` -**NOTE 2:** In the specific case of Cervantes, Kindle & Kobo targets, while we make some effort to support these Linaro/Ubuntu TCs, -they do *not* exactly target the proper devices. While your build will go fine, this may lead to runtime failure. -As time goes by, and/or the more bleeding-edge your distro is, the greater the risk for mismatch gets. -Thankfully, we have a distribution-agnostic solution for you: [koxtoolchain](https://github.com/koreader/koxtoolchain)! -This will allow you to build the *exact* same TCs used to build the nightlies, thanks to the magic of [crosstool-ng](https://github.com/crosstool-ng/crosstool-ng). These are also included precompiled in the Docker images for the respective targets. +##### e-Ink devices (e.g., Kindle, Kobo, Cervantes, reMarkable, PocketBook) + +**NOTE:** While, for some targets (specifically, Cervantes, Kindle & Kobo), we make *some* effort to support Linaro/Ubuntu TCs, +they do *not* exactly target the proper devices. While your build *may* go fine, this will *probably* lead to runtime failure. +As time goes by, and/or the more bleeding-edge your distro is, the greater the risk for mismatch gets. + +Which means, that, unless you are *very* sure you know what you're doing, you'll want to use the exact same TCs we do, ones that target their respective platforms properly. +We have a distribution-agnostic solution to make that mostly painless: [koxtoolchain](https://github.com/koreader/koxtoolchain)! +This will allow you to build the *exact* same TCs used to build the nightlies, thanks to the magic of [crosstool-ng](https://github.com/crosstool-ng/crosstool-ng). These are also included precompiled in the Docker images for the respective targets. -**NOTE 3:** The vendor toolchain will be downloaded automatically by `./kodev release pocketbook` ### Additional packages @@ -83,15 +79,13 @@ Ubuntu users can install it with: sudo apt-get install click ``` -**NOTE**: The Ubuntu Touch build won't start anymore, and none of the currently active developers have any physical devices. Please visit [#4960]( -https://github.com/koreader/koreader/issues/4960) if you want to help. +**NOTE**: The Ubuntu Touch build won't start anymore, and none of the currently active developers have any physical devices. Please visit [#4960](https://github.com/koreader/koreader/issues/4960) if you want to help. The Ubuntu Touch builds are therefore no longer published under releases on GitHub, but they are still available from [the nightly build server](http://build.koreader.rocks/download/nightly/). ## Building -You can check out our [nightlybuild script][nb-script] to see how to build a -package from scratch. +You can check out our [nightlybuild script][nb-script] to see how to build a package from scratch. ### Android @@ -105,13 +99,11 @@ package from scratch. ANDROID_ARCH=x86 ./kodev release android ``` -### Cervantes +### Desktop Linux -``` -./kodev release cervantes -``` +#### Emulator -### Desktop Linux +See [Building](https://github.com/koreader/koreader/blob/master/doc/Building.md). #### AppImage (x86_64) @@ -137,34 +129,54 @@ ANDROID_ARCH=x86 ./kodev release android ./kodev release debian-armhf ``` -### Kindle +### Desktop macOS + +``` +./kodev release macos +``` + +### e-Ink devices + +#### Cervantes + +``` +./kodev release cervantes +``` + +#### Kindle ``` ./kodev release kindle ``` -### Kobo +#### Kobo ``` ./kodev release kobo ``` -### Pocketbook +#### Pocketbook ``` ./kodev release pocketbook ``` -### Ubuntu Touch +#### reMarkable ``` -./kodev release ubuntu-touch +./kodev release remarkable ``` +### Embedded Linux devices + +#### Ubuntu Touch + +``` +./kodev release ubuntu-touch +``` ## Porting to a new target. See [Porting.md](Porting.md) - [nb-script]:https://gitlab.com/koreader/nightly-builds/blob/master/build_release.sh