- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
更新:这个问题已经解决了。我正在重新编辑问题以更新到固定状态。
我正在尝试编写一个使用 dep
工具的方法,在构建它之前解决 go
相关项目的依赖关系。我正在使用“rocko”Yocto 项目分支的“poky”层。该分支提供构建 go
编译器和 dep
依赖项工具的方法。
我的初始配方从 bitbucket 存储库中获取源代码:
GO_IMPORT = "bitbucket.org/path/to/my_project"
SRC_URI = "git://${GO_IMPORT}/protocol=http;user=${GIT_USER}:${GIT_PASS};destsuffix=${PN}-${PV}/src/${GO_IMPORT}"
然后我添加这个:
inherit go
DEPENDS += "go-dep"
添加这个函数后:
do_compile_prepend() {
dep init
dep ensure
}
Yocto 提示这个错误:
run.do_compile.8543: line 118: dep: command not found
阅读下面您的一些答案后,我在 poky/meta/recipes-devtools/go/go-dep_0.3.0.bb 配方文件的末尾添加了您的答案中的建议补丁 - 非常感谢! :-)
BBCLASSEXTEND = "native nativesdk"
在我执行一些 bitbake 命令后:
$ bitbake -c cleanall go-dep-native
$ bitbake go-dep-native
Bitbake 进程正常结束,没有显示任何错误或警告。 native go-dep
工具已内置到 tmp/work/x86_64-linux/go-dep-native 目录中,并已正确安装到 tmp/sysroots-components/x86_64/go-dep-native/usr/bin。
我修改了 do_compile_prepend() 函数,如下所示:
do_compile_prepend() {
rm -f ${WORKDIR}/build/src/${GO_IMPORT}/Gopkg.toml
rm -f ${WORKDIR}/build/src/${GO_IMPORT}/Gopkg.lock
cd ${WORKDIR}/build/src/${GO_IMPORT}
dep init
dep ensure
}
我在我的食谱中修改 DEPENDS 是这样的:
DEPENDS = "go-native go-dep-native"
请注意 go-dep 已被删除(我不需要目标设备上的 dep
工具,只是为了解决 native 平台上的依赖关系)。
之后,我执行这个命令:
$ bitbake <foo>
do_compile 阶段工作正常,但在执行 do_package 阶段时出现一些错误:
ERROR: <foo>-1.0-r0 do_package: QA Issue: File '/usr/bin/dep' from <foo> was already stripped, this will prevent future debugging! [already-stripped]
ERROR: <foo>-1.0-r0 do_package: Fatal QA errors found, failing task.
ERROR: <foo>-1.0-r0 do_package: Function failed: do_package
这些错误已修复,在我的食谱末尾附加了这个:
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
INHIBIT_PACKAGE_STRIP = "1"
RDEPENDS_${PN}-staticdev += "bash"
RDEPENDS_${PN}-dev += "bash"
我不知道这是否是解决我的问题的最佳方法,但至少现在它工作正常。欢迎提出任何改进此食谱的建议。先感谢您! :-)
最佳答案
DEPENDS += "go-dep"
意味着您的目标 配方可以包含 go-dep 提供的 header 或链接库,但您不能运行dep命令,如果需要运行dep命令,需要依赖go-dep-native:
DEPENDS += "go-dep-native"
但是yocto目前没有提供go-dep-native,所以你要加上:
BBCLASSEXTEND = "native"
到meta/recipes-devtools/go/go-dep_XXX.bb。
然后你可以在do_compile_prepend()
中运行dep命令
关于go - 使用 dep 工具管理 Go 依赖项的 Yocto 配方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48318030/
我使用 go dep 工具版本 v0.4.1,现在当我运行 dep init 时它会按预期创建 2 个文件,当我打开 gopkg.lock 我发现例如以下内容 [[projects]] name
运行 dep ensure 后,go-chi 缺少中间件子包。 project-backend | main.go:8:2: cannot find package "github.com/
我正在查看新架构组件的 google 示例,在那里我找到了如下代码: dependencies { // Support libraries implementation deps.s
我有一个包含 2 个项目的 Visual Studio 解决方案,都在 .Net Core 3.1 中 XYZ.Api, Xyz.ApiTests ApiTests 是一个用于集成测试的 xUnit
我正在使用 Rails 3.1 beta 以及 Ruby 1.9.2 和 rake 0.9.2,并且我编写了一堆 rake 任务。这是一个例子: namespace :data do desc "
请遵循以下菜单顺序: 文件->新建->项目-> ASP> .NET核心Web应用程序(.Net Framework) 构建->构建解决方案 得到这个错误: 错误C:\ Users \ Sam \ Do
我正在考虑尝试一些 jit 编译(只是为了学习),因为我在家里运行所有主要的三个(windows、os x、linux),所以让它跨平台工作会很好。 考虑到这一点,我想知道是否有任何方法可以摆脱使用虚
是否可以检查是否启用了数据执行保护? 有没有和这个CMD命令一样的功能 wmic OS Get DataExecutionPrevention_SupportPolicy 然后返回这样的东西? 0 –
当运行我们的一个软件时,测试人员面临着 Windows 的数据执行阻止对话框。 我们尝试在开发人员计算机上重现这种情况以进行调试:但没有成功。 有谁知道如何找到可能导致 DEP 保护终止应用程序的原因
我们有一个应用程序,其中堆的某些部分作为汇编指令执行/用于测试目的 - 我们将程序下载到 PLC,但允许用户通过在下载到 PLC 之前执行他们的代码来模拟运行他们的应用程序。之前我们总是从存储指令的堆
我已经使用以下命令安装了 httprouter 包 dep ensure -add github.com/julienschmidt/httprouter vendor └
我正在尝试使用 DerivingVia为具有函数依赖关系的多参数类型类削减实例定义的样板。 我有这些类型和类: {-# LANGUAGE FunctionalDependencies #-} {-#
我有一个查询,可以有效地返回特定标签的依赖项的所有标签。我想知道这些依赖项的实际文件路径。 $ bazel query 'deps(//foo:bar)' --noimplicit_deps //ba
我们正在使用 rebar 为我们的项目拉取依赖项,其中许多来自 github。我们的配置看起来像: {deps, [ {cowboy, "", {git, "git://github.
在客户端我有这个: var Coll1 = new Meteor.Collection('myCollection1'); var Coll2 = new Meteor.Collection('myC
我需要确定 Windows DEP 是否被禁用,是否设置为基本的 Windows 程序和服务或除我选择的程序之外的所有程序。 我一直在寻找一种方法,但没有成功。有没有办法做到这一点?用 C# 开发。
我想在我的 elixir 应用程序的测试中使用我的依赖项之一的测试目录中的模块。我想知道是否有办法做到这一点。谢谢。 我试过import ,这给了我一个编译错误 elixir module is n
我正在使用 kubebuilder创建 Kubernetes 运营商项目。运行 quickstart guide 中描述的项目初始化命令后 kubebuilder init --domain k8s.
我刚刚开始使用 cloudstack,想要让开发环境运行起来。我安装了 Maven,并使用 Eclipse。我一直在关注this指南,这似乎有点过时,但我一直无法找到有关在 Eclipse 中实现此操
谁能告诉我lein deps是如何工作的?如果lein在~/.m2中找到项目所需版本的依赖项,lein仍然会再次下载相同的包? 最佳答案 让我们将其分为几个问题,我将尝试对每个问题进行简要介绍: 有人
我是一名优秀的程序员,十分优秀!