问题标签 [toolchain]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1068 浏览

linux - 如何构建可靠的工具链

请指导我完成构建足以构建可启动 linux 映像的基本工具链所需的步骤,并讨论为什么应该按照您建议的方式完成工作

指向现有文档的指针也非常感谢。我从 Scratch 开始研究 Linux,并且有一些使用发行版特定工具构建 Gentoo 映像的经验。我还查看了用于为嵌入式设备构建交叉编译工具链的各种工具的文档。

然而,这些工具的文档只讨论了实际使用这些工具编译工具链,而不是它们是如何做到的,以及为什么没有不同。通常这些资源还提到其他工具的做法不同(当然更糟),所以我觉得简单地阅读源代码只会帮助我了解给定的构建工具是如何工作的,而不是提供对实际过程的洞察力,这是可能的变化。

因此,我对有关自动构建工具链的工具的讨论不太感兴趣,而是对如何手动进行的注释说明感兴趣。另请注意,现在我计划在同一台机器上构建和运行映像,因此我不需要交叉编译。但我仍然对有关交叉编译的讨论感兴趣,但重点可能应该在其他地方。还需要什么以及构建可启动映像不是这个问题的一部分 - 只是构建工具链来实现它。

为了帮助您了解我的立场,我有一些问题和一些我相信知道的事情:我知道即使在本地构建时,将用于构建图像的工具链与主机的工具链分开也很重要,以避免链接到库以后可能不可用(其他原因?)。我不知道相应地调整环境变量是否足够(哪个?)或者是否最好构建工具链、chroot 和重建(我从重建中获得什么?)。如果做前者会出什么问题?我已经读过两次构建 gcc(使用第一个构建第二个)是矫枉过正的,因为它的构建系统无论如何都会这样做。如果是这样,它可以检测到两个构建中的哪些差异,为什么它们很重要?如果两个构建不同,那么肯定会出现问题,如果它们不同,该怎么办。正确完成交叉编译是否会产生与本机完成时完全相同的二进制文件?如果不是,为什么这毕竟还不错,而且许多项目总是选择这种方式?

0 投票
3 回答
21249 浏览

android - 如何告诉 Android NDK 使用不同的工具链

我已经下载了一个自定义工具链 ( linaro ) 来构建基于 ARM 的 Android 应用程序。我如何告诉 NDK 使用它?我可以在 Android.mk 和 Application.mk 中定义或设置一些允许我这样做的东西吗?还有其他方法吗?

0 投票
3 回答
1691 浏览

c++ - 我需要如何配置 Eclipse 来创建 C++ 程序?

我为 C/C++ 开发人员安装了 Eclipse。安装后我还安装了 PyDev。

我设法创建了一个 C++ 项目(它附带的 Hello World 项目)。但我无法编译/运行它。

当我创建项目时,工具链列表中没有任何内容。所以我想我需要安装一个工具链。但我找不到任何东西。我需要有人帮我解决这个问题。

我正在使用 64 位 Windows 7。

0 投票
1 回答
235 浏览

iphone - Iphone makefile 在加载时删除最后一个引号

我目前正在尝试构建一个我使用 iPhone 工具链开发的 iPhone 应用程序。当我完成创建 makefile 时,它​​试图将我的 .o 文件一起加载时给了我这个错误:

在查看它试图执行的 shell 代码后,我确定它删除了最后一个引号,所以我对我的 makefile 进行了快速修复。加载后,它给了我以下错误:

未定义的符号:

如果我阅读正确,它找不到我的主要功能,但它在 main.mm 中明确定义。我想让我的项目保持封闭源代码,但我愿意展示我的代码的某些非重要部分。我不明白为什么它没有编译;它在 Xcode 上运行良好。我对 Makefile 的更改是否以某种方式导致它不加载 _main 符号?我该如何解决这个问题?我很困惑。

这是我的Makefile:

重要的是要注意 Prefix.h 曾经是一个预编译的头文件,但我只是将其更改为头文件并告诉 make 将其包含在我的所有源文件中。

我为不包括最终报价的问题所做的快速修复是:

改变:

至:

在那篇长篇文章之后重申我的问题。我对 Makefile 的更改是否以某种方式导致它不加载 _main 符号?

0 投票
2 回答
3249 浏览

macos - 在 Mac 上为 iPhone 交叉编译?

我将如何设置一切以交叉编译从我的 OSX 10.7 Macbook pro 到我越狱的第 4 代 iPod touch。我的主要目标是能够将开源库移植到 iphone。我似乎找不到任何关于 iOS 4 交叉编译的好/最近的文章。

0 投票
1 回答
2463 浏览

embedded-linux - 如何重建 buildroot 工具链

大家!
我将 buildroot 移动到另一个目录,并且 buildroot 工具链不起作用,因为它引用了绝对路径。如何重建工具链?必须有一些 *-dirclean makefile 目标才能清除工具链。
谢谢!

0 投票
3 回答
163 浏览

c++ - 如何获取从 C++ 中的特定类继承的所有声明类的列表

我知道这在 C++ 中并不完全可行,但也许是一个可以生成具有函数的代码的工具链,当调用该函数时,它会给我所有这些类的列表。例如,在多个文件中,我有以下内容:

然后,在运行时,我只想要一个指向该类的单个实例的指针。假设我生成的代码如下所示:

此外, superList 的类型为List<ParticularClass*>. 另外,我将使用 QtParticularClass并将其QObject派生,因此无论如何我都可以获取类的名称。我需要基本上反省这个类,所以我的内部代码并没有真正关心新定义的类型。

那么,有没有办法用一些工具链生成这段代码?如果可以qmake单独使用,那就像在该死的蛋糕上锦上添花:)

非常感谢您的时间。

0 投票
1 回答
3270 浏览

qt - 交叉编译 Qt 源 Angstrom 工具链(任何 linux 支持的嵌入式工具链都可以)

我是交叉编译的新手,愿意开始为 beagleboard 交叉编译 Qt。有人可以给我这个或最近尝试过的教程的具体说明。请不要假设我有任何知识,因此无法处理诸如“您可能必须将其编辑为您的架构”之类​​的指令。我有几个重要的问题。

  1. 如何构建 Angstrom 工具链以及如何为交叉编译做准备。(我已经尝试过 anstrom 网站,但在我的生活中从未发现过这样的随机指令)。

  2. 安装后如何交叉编译 Qt。

0 投票
3 回答
233 浏览

iphone - 在 Linux 上构建 LLVM

好吧,不是任何人都可能会看到这个,但 IA)发现 LLVM 不是我需要的,它是 LLVM-gcc,你可以从 sauriks repo 获得它。B) 意识到我下载的工具链已经工作了减去 la libstdc++ 不在 /usr/local/lib/gcc/arm-apple-darwin/4.0.1/ 所以为了得到 libstdc++ 我相信我是从任何一个文件系统中得到的通过 SFTP 使用 torrent 或我的实际 Ipod。我可以自豪地说 C++ 可以在 IOS 上编译(尽管这很麻烦 :D)。

不确定在 SO 上链接种子是否可以,但对于任何想要链接的人,给我发电子邮件或 pm 我,如果你能在 SO 上这样做(我不确定?)我唯一还没有测试的是 objc,我可以'找不到任何非 xcode 教程。这就是上次让我难过的是找到不依赖模板的教程。我从来都不是模板:D

为什么继续投反对票只会伤害正在寻找与我相同答案的其他用户?

0 投票
4 回答
9024 浏览

eclipse - 工具链 ARM Cortex M4

有没有办法为基于 ARM Cortex M3/M4 的微控制器(Stellaris,Kinetis)设置 Eclipse + gnu gcc + 调试器?

最好的问候,彼得