小编Not*_*ine的帖子

Ubuntu 18.10 - 如何安装特定版本的 gcc

免责声明:我搜索并阅读了类似的帖子,但他们没有回答我的问题。

我正在运行 Ubuntu 18.10,需要安装 gcc 8.2.0 来构建内核模块。apt-get 想要安装 8.3,它与我的内核构建方式不匹配。

我努力了

sudo apt-get update
sudo apt-get install gcc:8.2.0
Run Code Online (Sandbox Code Playgroud)

但我收到错误消息,无法找到该包。

我尝试采用安装 8.3 然后构建 8.2.0 并将其安装到 /usr/local/bin 的路线。它适用于一些模块,但当我尝试为 VMWare 构建内核模块时,它抱怨该软件包未正确安装。我是一个 CentOS 爱好者,所以对基于 Debian 的发行版有点不适应。

在这里找到了 gcc 8.2.0作为 Cosmic (18.10) 核心的一部分,但我不确定如何安装它。

我也尝试过:

sudo apt-get install gcc=4:8.2.0-1ubuntu1 --no-upgrade
Run Code Online (Sandbox Code Playgroud)

而且它仍然想安装8.3。我需要更改默认值才能使其正常工作吗?它完全忽略了 --no-upgrade 选项。

ubuntu gcc apt

6
推荐指数
2
解决办法
3万
查看次数

嵌套字典和列表的 Pythonic 替代品

我目前正在使用自纪元以来以秒为键的字典,并结合嵌套字典和列表来存储和查找事件。优点是我可以快速查找性能良好的值(想想哈希)。缺点是后续内容的查找和操作比较笨拙。我忍不住认为我的方法不太 Pythonic,所以我正在寻找建议。

这是一个使用整数而不是自纪元以来的秒数的简单示例:

D = {}

D[1] = {"995" : ["20905", "200101"]}
D[2] = {"991" : ["20901"], "995" : ["20905"]}

eventCode = '995'
error = '90900'

# find entry
if 1 in D:
    # if eventCode exists then append error code
    if D[1][eventCode]:
        D[1][eventCode].append(error)
Run Code Online (Sandbox Code Playgroud)

我可以快速查找 D[1],但是代码的其余部分看起来不太 Pythonic。有什么建议还是我偏执?

我应该检查“错误”是否已在列表中。但是,我不确定如何检查此构造中的成员资格。这个片段对我不起作用:

if error not in D[1][eventCode]
Run Code Online (Sandbox Code Playgroud)

python dictionary

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

AWS Chalice:在 Python 中读取 lambda 环境变量

我需要从我的 Chalice Python 代码访问我在 AWS Lambda 中创建的环境变量,但我找不到有意义的示例。

想法?

我正在使用 Python 3.6。

aws-lambda chalice

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

标签 统计

apt ×1

aws-lambda ×1

chalice ×1

dictionary ×1

gcc ×1

python ×1

ubuntu ×1