Deal all, I'm very pleased to announce that arm64 platform for Tizen:Common is released. Now, we could have one more architecture besides arm/i586/x86_64 for tizen platform. Actually, the snapshot image was generated since December but crosswalk/crosswalk-bin were excluded due to build failure. Finally, I've resolved the build failure of crosswalk/crosswalk-bin for arm64[1].
To enable arm64 platform, we upgraded toolchain packages(gcc,glibc,binutils and so on) to the latest version because they have many/much improvements for arm64. * Updated toolchain packages list: - gcc: 4.8.2 -> 4.9.2 - binutils: 2.23.1 -> 2.24.90 - glibc: 2.18 -> 2.20 - gdb: 7.5.1 -> 7.8.1 - gmp: 5.1.3 -> 6.0 - qemu: 1.6.0 -> 2.1.0 - llvm: 3.1 -> 3.5.0 I think this upgrade can be really helpful because we can get performance improvements not only arm64 but also other architectures(arm/i586/x86_64). You can see the release notes from gcc 4.9 version[2]. You can see the guide how to run the image on qemu and ARM Juno board[3]. Unfortunately, qemu-aarch64 can only emulate a mach-virt machine, thus it can't support a display stuff. To build your package for aarch64(arm64) using GBS tool, you just type 'aarch64' in the architecture field. $ gbs build -A aarch64 And you can specify the architecture option in the spec file like below: %ifarch aarch64 In the source code, you can use below definition to detect the arm64: #if defined(__aarch64__) Please note the aarch64 uses LP64 data model which is identical with x86_64. The main differences between ILP32(arm/i586) and LP64(aarch64/x86_64) are size of pointer and long data types. The LP64 model uses 64bit long type and 64bit pointer type. So, do not allow conversion of pointer type(8bytes) to int type(4bytes). Thanks to Philippe Coval's effort, libav and some multimedia packages were upgraded to support arm64 well. I think there is still many packages waiting for upgrade especially architecture specific packages. Please upgrade your packages if possible :) Thanks to special guys who made an effort to enable arm64 platform. (Vyachelav, Ilya, Yury, Stéphane, Phillipe and ...) [1]: https://review.tizen.org/gerrit/gitweb?p=platform/framework/web/crosswalk.gi t;a=shortlog;h=refs/heads/tizen [2]: https://gcc.gnu.org/gcc-4.9/changes.html [3]: https://wiki.tizen.org/wiki/Tizen_ARM64_Development _______________________________________________ Dev mailing list [email protected] https://lists.tizen.org/listinfo/dev
