将各个自动工具项目分组到另一个“项目”中的最佳方法是什么?

发布于 2024-07-13 21:22:10 字数 307 浏览 6 评论 0原文

我将创建一个“库的库”,并希望使用自动工具集来管理每个单独的项目。 另外,我希望能够同时构建整套库。

单独的库:

  • libyarfoo
  • libyarbar
  • libyarbaz

怀疑我可能只需要手工编写一个顶级 Makefile,然后让每个单独的库/便利库成为它自己的自动工具集包。

我做过类似的事情(四五年前),但我丢失了我的参考代码。 我真正记得的唯一一件事是花了几个月的时间在自动工具中摸索,然后才按照我想要的方式设置所有内容。

I am going to be creating a "library of libraries" and would like each individual project to be managed using autotoolset. In addition, I would like to be able to build the whole set of libraries at the same time.

Individual libraries:

  • libyarconveniencezzz
  • libyarfoo
  • libyarbar
  • libyarbaz

I suspect that I might need to just have a top level Makefile written by hand and then have each individual library/convenience library be its own autotoolset package.

I have done something similar to this (four or five years ago) but I have lost my reference code. About the only thing I really remember was taking several months fumbling around in autotools before getting everything setup like I wanted.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

傲性难收 2024-07-20 21:22:10

我使用以下代码构建几个自动工具管理的包(尽管它们都创建“正常”二进制文件而不是“库的库”):

configure.ac:

AC_INIT(bigpackage, 1.0, [email protected])
AM_INIT_AUTOMAKE
AC_CONFIG_FILES(Makefile)
AC_CONFIG_SUBDIRS([package1 package2 package3])
AC_OUTPUT

Makefile.am:

SUBDIRS = package1 package2 package3

然后所有这些都可以照常设置:

touch NEWS README AUTHORS ChangeLog
autoreconf -i
./configure
make

I不一定称其为“最佳方法”,但它可以工作并且很好地将所有标志传递给子包。

I use the following code to build several autotools-managed packages (though they all create "normal" binaries rather than a "library of libraries"):

configure.ac:

AC_INIT(bigpackage, 1.0, [email protected])
AM_INIT_AUTOMAKE
AC_CONFIG_FILES(Makefile)
AC_CONFIG_SUBDIRS([package1 package2 package3])
AC_OUTPUT

Makefile.am:

SUBDIRS = package1 package2 package3

Then all this can be set up as usual:

touch NEWS README AUTHORS ChangeLog
autoreconf -i
./configure
make

I wouldn't necessarily call it the "best way", but it works and nicely passes all flags to the subpackages.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文