- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
基本问题/目标:
我希望能够使用一些共享库,它们应该在自定义 PPA 的 cmake 步骤(插件)之前获取。
snapcraft.yaml:
name: mraa-blink-example
version: 'Latest'
summary: mraa for snapcraft
description: |
Blink Example from MRAA lib
grade: stable #devel # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs and slots
apps:
blinkapp:
command: bin/blink
parts:
blink:
plugin: cmake
build-packages:
- libmraa1
- libmraa-dev
- mraa-tools
- python-mraa
- python3-mraa
CMakeLists.txt
cmake_minimum_required(VERSION 2.8.9)
project (MRAA)
file(GLOB SOURCES "src/*.cpp")
#For the shared library:
set ( PROJECT_LINK_LIBS libmraa.so )
add_executable(blink ${SOURCES})
target_link_libraries(blink ${PROJECT_LINK_LIBS} )
install(TARGETS blink DESTINATION /bin)
因为构建包来自自定义 PPA,所以出现错误:
Could not find a required package in 'build-packages': "The cache has no package named 'libmraa-dev'"
有没有办法解决这个问题?
最佳答案
背景:
有人努力将 Gnome 库抽象为一个单独的“平台”快照,该快照是使用 Ubuntu 桌面团队的 Gnome-3-26 PPA 在 Launchpad 上构建的。 PPA 包含为适应 Ubuntu Xenial (16.04) 的运行时环境而编译的 gnome 平台,这将允许针对比构建环境通常包含的更新的 Gnome 构建快照。但这需要构建环境中的自定义 PPA,和你一样,我也在努力研究如何做到这一点。
启用 gnome 平台 PPA 后,您仍然需要将快照链接到运行时快照。这是通过添加一个连接到 gnome-3-26-1604
的插件并使用 desktop-gnome-platform
助手
我的解决方案:
我决定使用多部分构建,其中主要应用程序“部分”依赖于声明为使用“nil”插件的部分,这意味着它实际上不执行任何操作。然后,我向 nil 部分添加了一个“准备”脚本,该脚本完成了添加 PPA、PGP key 和强制更新/升级周期所必需的操作。
我认为这需要是一个单独的部分,而不是作为主应用程序上的准备脚本,因为构建包是在运行准备脚本之前获取的,这意味着它将无法找到依赖项的包并死掉有一个很好的错误信息。这是通过执行多部分方法来解决的。我用它来构建 gnome-twitch
snap,它是几天前宣布的,代表 Snapcrafters 的努力。
示例:
下面是 gnome-twitch snapcraft.yaml 的不完整粘贴,用于解释我是如何做到的:
parts:
prepare:
plugin: nil
prepare: |
echo "deb http://ppa.launchpad.net/ubuntu-desktop/gnome-3-26/ubuntu xenial main" | tee /etc/apt/sources.list.d/gnome-3-24.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 399B698EEA9EF163B6F9A0F62CC98497A1231595
apt update
apt upgrade -yy
prime: [-*]
...
gnome-twitch:
after: [prepare, desktop-gnome-platform]
...
plugs:
gnome-3-26-1604:
interface: content
content: gnome-3-26-1604
target: gnome-platform
default-provider: gnome-3-26-1604
apps:
gnome-twitch:
command: desktop-launch $SNAP/usr/bin/gnome-twitch
plugs:
- ... # all the plugs required
- gnome-3-26-1604
关于snapcraft - 如何将自定义 PPA 添加到 snapcraft,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43368821/
我创建了一个用户可以添加测试的字段。这一切运行顺利我只希望当用户点击(添加另一个测试)然后上一个(添加另一个测试)删除并且这个显示在新字段中。 所有运行良好的唯一问题是点击(添加另一个字段)之前添加另
String[] option = {"Adlawan", "Angeles", "Arreza", "Benenoso", "Bermas", "Brebant
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我正在努力将 jQuery 滚动功能添加到 nav-tab (Bootstrap 3)。我希望用户能够选择他们想要的选项卡,并在选项卡内容中有一个可以平滑滚动到 anchor 的链接。这是我的代码,可
我正在尝试在用户登录后再添加 2 个 ui 选项卡。首先,我尝试做一个之后。 $('#slideshow').tabs('remove', '4'); $("#slideshow ul li:last
我有一个包含选择元素的表单,我想通过选择添加和删除其中一些元素。这是html代码(这里也有jsfiddle http://jsfiddle.net/txhajy2w/):
正在写这个: view.backgroundColor = UIColor.white.withAlphaComponent(0.9) 等同于: view.backgroundColor = UICo
好的,如果其中有任何信息,我想将这些列添加到一起。所以说我有 账户 1 2 3 . 有 4 个帐户空间,但只有 3 个帐户。我如何创建 java 脚本来添加它。 最佳答案 Live Example H
我想知道是否有一种有效的预制算法来确定一组数字的和/差是否可以等于不同的数字。示例: 5、8、10、2,使用 + 或 - 等于 9。5 - 8 = -3 + 10 = 7 + 2 = 9 如果有一个预
我似乎有一个卡住的 git repo。它卡在所有基本的添加、提交命令上,git push 返回所有内容为最新的。 从其他帖子我已经完成了 git gc 和 git fsck/ 我认为基本的调试步骤是
我的 Oracle SQL 查询如下- Q1- select hca.account_number, hca.attribute3, SUM(rcl.extended_amou
我正在阅读 http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingG
我正在尝试添加一个“加载更多”按钮并限制下面的结果,这样投资组合页面中就不会同时加载 1000 个内容,如下所示:http://typesetdesign.com/portfolio/ 我对 PHP
我遇到这个问题,我添加了 8 个文本框,它工作正常,但是当我添加更多文本框(如 16 个文本框)时,它不会添加最后一个文本框。有人遇到过这个问题吗?提前致谢。 Live Link: JAVASCRIP
add/remove clone first row default not delete 添加/删除克隆第一行默认不删除&并获取正确的SrNo(例如:添加3行并在看到问题后删除SrNo.2)
我编码this ,但删除按钮不起作用。我在控制台中没有任何错误.. var counter = 0; var dataList = document.getElementById('materi
我有一个类似数组的对象: [1:数组[10]、2:数组[2]、3:数组[2]、4:数组[2]、5:数组[3]、6:数组[1]] 我正在尝试删除前两个元素,执行一些操作,然后将它们再次插入到同一位置。
使用的 Delphi 版本:2007 你好, 我有一个 Tecord 数组 TInfo = Record Name : String; Price : Integer; end; var Info
我使用了基本的 gridster 代码,然后我声明了通过按钮添加和删除小部件的函数它工作正常但是当我将调整大小功能添加到上面的代码中时,它都不起作用(我的意思是调整大小,添加和删除小部件) 我的js代
title 323 323 323 title 323 323 323 title 323 323 323 JS $(document).keydown(function(e){
我是一名优秀的程序员,十分优秀!