在为 Ubuntu Touch 开发时,如何安装和使用 libfreetype、libpng 等?我知道我需要在 chroot 中安装它们。有什么技巧吗,还是我应该直接使用 apt-get 安装它们?
还有,安装后如何让 CMake 找到它们?据我所知,FindFreetype 或 FindPNG 等脚本会查看特定路径,但 chroot 中的库和标头位于不同的路径 (arm-linux-gnueabihf/...)。
答案1
chroot 类似于虚拟机,因此它就apt-get install
在 chroot 内部。chroot 的控制台可通过 SDK 的 GUI 或schroot
命令访问。
编写良好的 FindStuff.cmake 脚本可以正确地找到东西(通常它们执行 find_library、find_path、pkgconfig 等)。
答案2
好的,我明白了。Ubuntu IDE 使用 schroot 会话。这些会话即使在您重新启动计算机后仍会持续存在,因此如果在您将软件安装到 chroot 之前创建了此类会话,Ubuntu IDE 将无法访问该软件。
因此,如果您需要在 Ubuntu SDK chroot 中安装其他库,请执行以下操作:
1)关闭 Ubuntu IDE
2)列出旧的 chroot 会话:
schroot --list --all-sessions
2)终止旧的 click chroot 会话:
sudo schroot --end-session SESSION_NAME
3)登录到chroot维护模式
sudo click chroot -a armhf -f ubuntu-sdk-15.04 maint
4)apt-get 安装必要的库和/或软件
5)再次启动 Ubuntu IDE