gpt4 book ai didi

Emacs CEDET EDE 非平凡项目设置

转载 作者:行者123 更新时间:2023-12-01 04:06:15 25 4
gpt4 key购买 nike

试图通过使用 EDE 生成 Makefile 来理解 EDE 的工作原理
包含特定目标下的多个目标的项目目录
等级制度。我运气不好,信息页面似乎也没有
回答我的问题。

我的目录结构类似于:
(星号 (*) 标记包含 main() 函数的文件)

research/
flow/
flow.cpp
flow.hpp
program.cpp *

samples/
sample1.yuv

utils/
yuvreader.cpp
yuvreader.hpp

tests/
yuvreader_test.cpp *

我想用一个或多个子项目创建 EDE 项目;或者我
只想要一个或多个目标……?

flow 的 program.cpp 需要 flow/和 utils/来源,但 yuvreader_test
只需要实用程序/来源。

我在根目录和所有子目录中做了 ede-new。我也在根目录下做了ede-new-target,但是在子目录中添加源文件时,它无法识别我创建的目标。

如果有人能给我指出一些更复杂的东西,我将不胜感激
Project.ede 文件用于像我正在尝试做的事情。你可以猜猜看
我有更多包含类代码文件的子目录,其中一些
具有使用该代码的独立程序;我也有更多的测试
测试中的代码/。任何示例文件/命令工作流都是
赞赏。

最佳答案

将生成 Makefile 或 Automakefile 的 EDE 功能比 Make 或 Automake 具有更多的约束。例如,属于目标的文件必须与包含目标的项目位于同一目录中。在您的示例中,您的根目录中可能没有项目。

要将多个源整合到一个程序中,一个简单的机制是让每个子目录创建一个存档 (.a) 或一个共享库 (.so),它们在您的程序中链接在一起。

如果这太受限制,您也可以编写自己的 automake 文件,EDE 将直接读取这些文件,因此您可以根据需要拥有更复杂的构建过程。

CEDET 发行版使用 EDE 作为其构建过程,因此您可以将其视为一个复杂的示例。虽然它不构建 C++ 文件,所以它可能没有你想要的那么有用。

关于Emacs CEDET EDE 非平凡项目设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9175890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com