小编lew*_*tan的帖子

Bitbake没有在rootfs映像中安装我的文件


我创建了一个bitbake配方,它将我的两个文件(VPU的固件二进制文件)复制到目标根文件系统上的/ lib/firmware /目录中.

我尝试了很多选项,所以我现在不确定我的食谱中有什么不必要/多余以及需要什么.我认为FILESEXTRAPATHS ..,SRC_URI ..和do_install ..应该足够了,但它不适用于它,也不适用于所有其他的东西.

DESCRIPTION = "VPU libraries provided by fsl"

LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"

PACKAGE_ARCH = "all"
ALLOW_EMPTY_${PN} = "1"

FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SRC_URI += " \
    file://vpu_fw_imx6d.bin \
    file://vpu_fw_imx6q.bin \
"

INSANE_SKIP_${PN} += "installed-vs-shipped"

do_install () {
    install -d ${D}${base_libdir}/firmware/
    cp ${WORKDIR}/vpu_fw_imx6d.bin ${D}${base_libdir}/firmware/
    cp ${WORKDIR}/vpu_fw_imx6q.bin ${D}${base_libdir}/firmware/
    chmod 755 ${D}${base_libdir}/firmware/vpu_fw_imx6d.bin
    chmod 755 ${D}${base_libdir}/firmware/vpu_fw_imx6q.bin
}
PACKAGES = "${PN}"
FILES_${PN} += " \
        ${D}${base_libdir}/firmware/vpu_fw_imx6d.bin \
        ${D}${base_libdir}/firmware/vpu_fw_imx6q.bin \
"
Run Code Online (Sandbox Code Playgroud)

能不能指出我做错了什么?

编辑:
安德斯答案真的帮助并解决了这个问题.

我发布"固定"食谱,以防有人发现它有用.

DESCRIPTION = "VPU libraries …
Run Code Online (Sandbox Code Playgroud)

bitbake yocto

10
推荐指数
1
解决办法
2万
查看次数

如何在bash中创建秒表?

我创建了一个简单的秒表(bash函数)来计算时间,但是现在它以毫秒显示当前时间.

代码:

function stopwatch() {
    date +%H:%M:%S:%N
    while true; do echo -ne "`date +%H:%M:%S:%N`\r"; done;
}
Run Code Online (Sandbox Code Playgroud)

我尝试按照这个答案中的解释改变它,但它仅适用于自Unix Epoch以来的第二个.

当我使用date格式时+%s.%N,由于bash减法只取整数这一事实,上面答案的减法停止了.

如何解决它并有一个终端秒表打印时间如下:

0.000000000
0.123123123
0.435345345
(and so on..)
Run Code Online (Sandbox Code Playgroud)

math bash time timer bash-function

5
推荐指数
3
解决办法
2754
查看次数

在C++中正确设置本地环境变量

在我的代码中,我使用以下内容:

putenv("TZ=UTC");
tzset();
Run Code Online (Sandbox Code Playgroud)

设置时区.

声明putenv()(这个答案建议它设置环境变量):

int putenv(char *string);
Run Code Online (Sandbox Code Playgroud)

我正在使用的构建系统设置编译器标志-Wall -Wextra -Werror -std=c++0x,因为我得到错误:

timeGateway.cpp:80:18: error: ISO C++ forbids converting a string constant to 'char*' [-Werror=write-strings]
   putenv("TZ=UTC");
                  ^
Run Code Online (Sandbox Code Playgroud)

我知道可以通过使用以下方法来抑制此错误:

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wwrite-strings"
  putenv("TZ=UTC");
#pragma GCC diagnostic pop
Run Code Online (Sandbox Code Playgroud)

但这非常难看.

我的问题:在C++中设置环境变量的正确方法是什么?

c++ string environment-variables string-literals c++11

5
推荐指数
2
解决办法
1026
查看次数

Docker构建失败(rpc错误:代码= 2 desc ="oci运行时错误:exec格式错误")

我对docker的经验很少,但我正在尝试使用gitlab-ci和docker镜像为我的库创建自动构建.

我希望它为raspberrypi构建,所以我找到了一个docker镜像(这里),我已经创建了一个github存储库Dockerfile.

在下一步中,我在dockerhub中创建了一个自动构建,但构建失败并出现以下错误:

Build failed: rpc error: code = 2 desc = "oci runtime error: exec format error"
Run Code Online (Sandbox Code Playgroud)

我在文档中找不到任何帮助,谷歌也没有任何帮助所以我问:
你知道是什么原因导致这个错误吗?

我的Dockerfile:

FROM resin/rpi-raspbian:wheezy-20160518
MAINTAINER lewicki.pk@gmail.com

RUN apt-get update && apt-get install -y \
        automake \
        cmake \
        g++ \
        git \
        libboost-all-dev \
        libi2c-dev \
        libjsoncpp-dev \
        libpcre3-dev \
        libssl-dev \
        libtool \
        make \
        openssl \
        pkg-config \
        wget \
        && apt-get clean
Run Code Online (Sandbox Code Playgroud)

来自docker的日志:

Starting build of index.docker.io/piotrlewicki/gitlab-ci_rpi-image:latest...
Step 1 : FROM resin/rpi-raspbian:wheezy-20160518 ---> aefd4527968f …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile

3
推荐指数
1
解决办法
5000
查看次数

在使用该别名调用的函数中使用bash别名

在终端游戏.它使用ssh连接,每个级别都有一对不同的用户和密码.

我使用我的bash别名存储这些对,即我为每个级别都有一个别名,我用两个参数调用bash函数:密码和级别数.

function log.as.bandit() {
    sshpass -p $1 ssh bandit$2@bandit.labs.overthewire.org
}
alias bandit14="log.as.bandit secretPass 14"
alias bandit15="log.as.bandit differentSecretPass 15"
Run Code Online (Sandbox Code Playgroud)

如果我可以作为参数传递密码并从我使用的别名中获取用户名,那对我来说会更容易.

问题:
是否可以在该别名调用的函数中使用别名?

在示例中:

function log.as.bandit() {
    sshpass -p $1 ssh $HERE_I_DEREFERENCE_THE_ALIAS_NAME@bandit.labs.overthewire.org
}
alias bandit14="log.as.bandit secretPass"
alias bandit15="log.as.bandit differentSecretPass"
Run Code Online (Sandbox Code Playgroud)

bash alias function

1
推荐指数
1
解决办法
278
查看次数