小编jf_*_*jf_的帖子

使用 ARM GCC 时,什么是“nosys”、“nano”、“rdimon”术语?

我正在学习使用 GCC 工具链编写 ARM 代码。我遇到了一些找不到文档的 GCC 选项。有人可以帮忙解释一下他们是做什么的吗?

  • -specs=nosys.specs
  • -specs=nano.specs
  • -specs=rdimon.specs
  • -lnosys

怎么做-specs=nosys.specs-lnosys关联?你是一起使用它们,还是它们相互排斥,或者其他什么?

和 nano,我收集到暗示使用 newlib-nano 库。我已经看到 this 与-lmand结合使用-lc。这是否只是为您提供标准的 libc 和 libm 函数?

代表什么rdimon?我知道它是用于“半主机”,这意味着以某种方式使用主机 IO。这是否意味着我可以打印到主机控制台?我找不到有关如何实际使用它的文档。

如果我没有找到所有这些的真相来源,请告诉我。

感谢您对澄清的任何帮助。

gcc arm bare-metal stm32

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

Latex Beamer:仅显示帧中覆盖的子集

我在 Latex Beamer 演示文稿中有一些 tikz 图片,其中有很多叠加层,我想在多个位置显示这些叠加层,但每次只显示部分步骤。我想避免复制 tikz 代码并必须维护多个类似的文件。因此我的问题是:如何在投影仪框架中仅使用覆盖幻灯片的子集,或者如何在特定的覆盖编号处启动框架?

我创建了一个简化的示例来演示:具有重叠项目的相同输入逐项在两个框架中导入。我想在第一帧中显示前两张幻灯片,在第三帧中显示另外两张幻灯片。在这之间我谈论其他事情(更多细节等)。此处带有标签的解决方案\only<...>不起作用:在第一种情况下有一张空幻灯片,在第二种情况下有两张。

\documentclass{beamer}
\usepackage[utf8]{inputenc}

\begin{document}

\begin{frame}
\only<1-2>{ % this almost works, but there is an empty slide too much
\input{list.tex}
}
\end{frame}

\begin{frame}
Some kind of intermediate distraction.
\end{frame}

\begin{frame}
% here I would like to set the overlay count to 3
\only<3-4>{
\input{list.tex}
}
\end{frame}

\end{document}
Run Code Online (Sandbox Code Playgroud)

列表.tex:

\begin{itemize}
  \item<1-> item 1 % this should appear in frame 1 slide 1 and frame 2 slide 1-2
  \item<2-> item 2 % this …
Run Code Online (Sandbox Code Playgroud)

latex beamer

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

与 Manim 的长文本

在使用Manim库的社区版渲染长文本时,我注意到信息渲染在可见窗口之外,效果相当不令人满意。我怀疑问题的根源是 Latex 未能确保文本保留在 pdf 边界内。有没有一种方法可以自动换行?我不想手动指定换行符,因为文本将不再显得合理。

这是一个最小的例子:

在此输入图像描述

from manim import *


class Edge_Wise(Scene):
    def construct(self):
        text=Tex("\\text{First we conceptualize an undirected graph  ${G}$  as a union of a finite number of line segments residing in  ${\\mathbb{{{C}}}}$ . By taking our earlier parametrization, we can create an almost trivial extension to  ${\\mathbb{{{R}}}}^{{{3}}}$ . In the following notation, we write a bicomplex number of a 2-tuple of complex numbers, the latter of which is multiplied by the constant  ${j}$ .  ${z}_{{0}}\\in{\\mathbb{{{C}}}}_{{>={0}}}$  is an …
Run Code Online (Sandbox Code Playgroud)

python latex manim

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

Java 记录序列化和对规范构造函数的重复调用

这篇关于可序列化记录的文章中指出

反序列化通过调用记录类的规范构造函数来创建新的记录对象,将从流中反序列化的值作为参数传递给规范构造函数。这是安全的,因为这意味着记录类可以在将值分配给字段之前对其进行验证,就像普通 Java 程序通过 new 创建记录对象一样。“不可能”的对象是不可能的。

这与仅用于验证的构造函数争论。然而,当构造函数操作参数时,这会导致相当奇怪的行为。考虑这个非常人为的简单示例:

以下记录a在保存之前进行操作:

import java.io.Serializable;

public record TRecord (int a) implements Serializable {
    public TRecord {
        a = a-1;
    }
}
Run Code Online (Sandbox Code Playgroud)

下面的程序只是在第一次保存序列化记录并在随后的时间加载它:

import java.io.*;

public class TestRecords {

    public static void main(String args[]) {
        TRecord a1 = null;

        try {
            FileInputStream fileIn = new FileInputStream("tmp");
            ObjectInputStream in = new ObjectInputStream(fileIn);
            a1 = (TRecord) in.readObject();
            in.close();
            fileIn.close();
        } catch (IOException | ClassNotFoundException i) {
            // ignore for now
        }
        if (a1 == …
Run Code Online (Sandbox Code Playgroud)

java serialization java-record java-16

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

标签 统计

latex ×2

arm ×1

bare-metal ×1

beamer ×1

gcc ×1

java ×1

java-16 ×1

java-record ×1

manim ×1

python ×1

serialization ×1

stm32 ×1