jjzjj

automake

全部标签

windows - 在 Cygwin 中安装 Make

我正在尝试使用cygwin在Windows7环境中构建一个Linux项目。但是,在为cygwin安装配置make时,我不断遇到错误。-bash:make:commandnotfound在inernet上搜索后,唯一的解决方案是重新运行安装程序并安装make包。我已经安装了automake1.15,但它位于noarch文件夹中,并且bin文件夹中没有二进制文件make.exe。 最佳答案 在setup-x86_64.exe文件可用的命令提示符下运行命令setup-x86_64.exe-q--packages=make(因为未安装mak

php - 链接用 C 编写的 PHP 扩展

编辑:修改我的问题在用C构建外部PHP模块时,如何链接共享对象? 最佳答案 如果您的C扩展代码使用共享库,您需要在config.m4文件中声明它。我强烈推荐使用ext_skel包含在PHP源代码中的用于生成框架config.m4的脚本:./ext_skel--extname=myextension由于您要链接到一个库,按照惯例您应该使用--with-myextension选项(而不是--enable-myextension)。取消注释config.m4中的相关行并填写您的库的详细信息。类似下面的内容:#--with-myextens

windows autoconf、automake编译 fdk-aac2.0.2(msvc)

官方文档automake一、背景简单说,就是,1991年cmake的作者为了避免写20多个不同系统的不同cmake,创建了兼容各种系统的autoconf、automake,这两个货能直接把c、c++文件等资源文件最终生成makefile,要是想具体了解automake的原理以及步骤,请自己查看automake官方文档(老外文档写的真好),github上好多源码都是直接生成好的configue,我们平时下载下来可直接用,./configure--->make就可以拿到相应的库了,但是最新的fdk-aac2.0.2稍微不大一样,可以分2种方式编译:a、第一种方式见文章: windowscmake-

c++ - GNU Automake - 构建与其依赖项静态链接的动态库

默认情况下,libtool创建两个版本的库-静态版本和动态版本,这正是我所需要的。我还需要我的库,无论它是什么类型——静态或动态,都将针对某些依赖项进行静态链接(几个.a文件——lib1.a、lib2.a和lib3.a)。我在_LDFLAGS中尝试了--whole-archive选项,如下所示:mylib_la_LDFLAGS=...-Wl,--whole-archive,-llib1-llib2-llib3--no-whole-archive....但是在Makefile生成之后,这些标志被移动到命令的末尾,因此没有任何效果:...-llib1-llib2-lib3....-Wl,-

c++ - C/C++ : Add -I option automatically for indirect include using automake

我有两个项目正在使用Automake构建。以下是Automake.amS的简化版本:AM_CPPFLAGS=-I/some/include_pathlib_LTLIBRARIES=libfoo.lalibfoo_la_SOURCES=foo.cpplibegfconfig_la_LIBADD=-lxml2和AM_CPPFLAGS=-I/some/include_path#Iwantthistohappenimplicitlylib_LTLIBRARIES=libbar.lalibbar_la_SOURCES=bar.cpplibbar_la_LIBADD=$(top_builddir)

c++ - 非递归(non-recursive) Automake

我正在尝试将项目转换为使用非递归automake。基于对SO的搜索,我可以看到该主题已在一定程度上得到涵盖。但是关于如何将递归automake项目转换为非递归项目,实际上并没有任何问题。我已经读过KarelZak'sblog当然还有autotools-mythbuster.experiencesregardingnon-recursiveautomake有问题但它没有说明如何转换项目。唯一能解释一点的问题似乎是关于subdir-objectsoption.但是我无法用这些资源转换我的项目。因此这个问题。让我们从一个简单的项目设置开始:project/\--configure.ac|--

c++ - automake 1.12 更改了 bison/yacc 输出名称,向后不兼容的更改?

我已经在https://github.com/Habbie/autoyacc-problem发布了一个存储库来证明我的问题。在automake1.11及以下版本中,在configure.ac中使用AC_PROG_YACC并在Makefile.am中使用AM_YFLAGS=-d,parser.yy会变成parser.cc和parser。H。使用automake1.12,我得到了parser.cc和parser.hh。因为mybin.cc有include"parser.h",这意味着1.12破坏了我的构建。我觉得这是一个向后不兼容的更改,但我觉得应该有一个理智的方法来处理这个问题。演示:g

c++ - Automake 库工具 'No rule to make target'

我一直在尝试构建OpenGLSuperBible附带的GLTools库使用automake进入libtool库。我已经设置了autoconf和automake,但是当涉及到实际构建库时,我得到:$makemake:***Noruletomaketarget`GLBatch.lo',neededby`libgltools.la'.Stop.我在google上搜索了尽可能多的内容,但一无所获,我是automake的新手,所以我不太确定要搜索什么。我敢肯定这要么是一个小错误,要么是我错过了一些基本的东西。这是我的Makefile.am:ACLOCAL_AMFLAGS=-Im4lib_LTLI

c++ - Automake 不在子目录中生成 Makefile.in

首先我只想说,我是Autotools的新手。我有一个具有以下结构的项目:+-src+-commandsMakefile.am+-copyMakefile.amcopy.hcopy.cpp+-deleteMakefile.amdelete.hdelete.cppmain.cppMakefile.amMakefile.amMakefile.am有SUBDIRS=srcsrc/Makefile.am有SUBDIRS=commands。src/commands/Makefile.am有SUBDIRS=$(AUTODIRS)当我在根目录下运行automake时,它​​会生成Makefile.in

c++ - 重构构建系统以使用 Autotools

在过去的几天里,我一直在研究使用autotools来构建我的项目,而不是我在过去几个月中拼凑的Makefile。不幸的是,我还没有找到一个例子让我对我的项目结构目前的情况有足够的了解。我的项目的应用程序代码中包含三个库。我正在寻找使用单个配置脚本来制作(和安装)应用程序和库的最佳方法。 最佳答案 抱歉跑题了。我现在做了类似的事情,但我可以在Autotools和CMake之间进行选择。我很高兴选择了第二个。可能值得一看,包括CDash、CTest和CPack。http://www.cmake.org/最好的问候,奥瓦内斯