最近的libtool工具可以生成各种库文件.包括静态库与动态库.使用这个即可
示例configure.ac
# -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ([2.68]) AC_INIT([librfc], [1.0], [http://www.sourceforge.net]) AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects]) AC_CONFIG_SRCDIR([src/httpuriparser.cpp]) AC_CONFIG_HEADERS([config.h]) # Checks for programs. AC_PROG_CXX LT_INIT # Checks for libraries. # Checks for header files. # Checks for typedefs, structures, and compiler characteristics. AC_HEADER_STDBOOL AC_TYPE_SIZE_T # Checks for library functions. AC_CONFIG_FILES([Makefile]) AC_OUTPUT
示例Makefile.am
AM_CPPFLAGS = --std=c++11 lib_LTLIBRARIES = librfc.la librfc_la_SOURCES = \ ./src/httpuriparser.cpp \ ./src/uri.cpp librfc_la_LDFLAGS = -no-undefined noinst_PROGRAMS = test1 test1_SOURCES = ./test/test1.cpp test1_LDADD = librfc.la pkginclude_HEADERS = \ ./src/httpuriparser.hpp \ ./src/iuriparser.hpp \ ./src/rfc.hpp \ ./src/uri.hpp
这样便可以既可以生成librfc的动态库,也可以生成librfc的静态库
相关推荐
本文将详细介绍如何在Visual Studio 2015环境下,利用libmodbus 3.1.6库生成适用于Windows平台的32位和64位DLL动态链接库。 libmodbus 3.1.6包含了针对不同系统的版本,如libmodbus-3.1.6_32对应32位系统,...
安装完成后,你需要在MSys的bash环境中配置编译环境,这包括设置PATH变量,确保GCC、automake、autoconf、libtool等工具都在路径中。接下来,你需要下载FFmpeg0.6.1的源码包,并将其解压到一个合适的目录。 在解压...
- **配置环境**:确保安装了Microsoft Visual Studio或其他兼容的C/C++编译器,以及如Autotools等构建工具,如`autoconf`和`automake`。 - **运行configure脚本**:`configure.ac`文件是Autotools的配置文件,运行...
在Linux和Windows平台上进行Qt编程是一项基础而重要的技能,尤其对于跨平台应用的开发者来说。Qt是一个强大的C++图形用户界面工具包,它允许开发者创建美观、高效的桌面和移动应用程序。以下是对`Ubuntu 9.04`下Qt4...
MinGW不依赖于任何第三方的DLL,因此编译出的程序可以直接在纯Windows环境下运行。 FFmpeg是一个强大的多媒体处理框架,用于处理音频和视频文件,包括编码、解码、转换、流媒体等功能。由于FFmpeg的源代码是用C语言...
3. **动态链接库(DLL)**:在MingW环境下,一些库以DLL的形式存在,如`msvcrt.dll`和`libwinpthread.dll`等,它们提供了Windows API和线程支持。 4. **x86和x64支持**:MingW提供了针对32位(x86)和64位(x64)...
Cygwin1.dll、cygiconv-2.dll和cygintl-3.dll是Cygwin运行所需的动态链接库文件,它们提供了Unix风格的命令行工具和库函数,使得在Windows上可以顺利编译Apache和相关组件。 1. **安装Cygwin** - 下载Cygwin安装...
这个压缩包中的文件应该是编译完成后生成的动态库文件(.dll)和对应的pdb文件,它们可以用于在Windows应用程序中集成FFmpeg功能,如音视频的编码、解码、转码、流媒体处理等。使用这些库时,需要确保与应用程序的...
7. **开发工具**:对于开发者来说,MSYS1.0新版可能还包含了其他开发工具,如版本控制系统Git,以及用于构建复杂项目配置的Autoconf和Automake等。 使用MSYS1.0最新版,开发者能够在Windows平台上享受类似Unix的...
描述中提到“可以在windows下编译出ffmpeg的dll库和lib库”,这意味着该环境不仅能够编译出静态库(lib文件),还可以生成动态链接库(dll文件)。DLL是Windows平台上的共享库,程序运行时可以动态加载和使用,而...
在多平台环境中,各种系统对于动态库(如.so文件在Linux上或.dll文件在Windows上)的处理方式不同,Libtool可以隐藏这些平台间的差异,使开发者可以用统一的方式构建和使用动态库。此外,Libtool还支持静态库的构建...
Cygwin通过一个名为“Cygwin DLL”的动态链接库模拟Linux API,使得Unix风格的程序能在Windows上运行。它还提供了一个名为“mount”的命令,用于将Windows目录映射为Unix风格的路径,使得文件系统的操作更加统一。 ...
5. **开发工具集**:除了编译器,MingWRT 还通常包含其他开发工具,如make、autoconf、automake等,方便开发者进行项目构建和自动化脚本编写。 6. **应用程序本地化**:由于 MingWRT 使用Windows API,开发的应用...
Cygwin的工作原理是通过一个名为“Cygwin DLL”的动态链接库,将Windows API转换为POSIX接口,从而使Linux程序能够在Windows上运行。这意味着开发者无需修改代码,就能将许多开源工具引入到Windows开发环境中。 **...
2. `Makefile.am`:这是GNU Automake的配置文件,用于自动构建源代码并生成Makefile,是开源项目常见的构建工具。 3. `API`:可能包含LAME编码器的接口定义和函数说明,程序员需要参考这些信息来正确地调用编码库。 ...
2. `GNUmakefile.am`和`GNUmakefile.in`:这些是Automake文件,它们定义了Makefile的规则和目标,使得构建过程自动化,适应不同的操作系统和编译器。 3. `configure`:由`configure.ac`生成的可执行脚本,用于检测...
1. `configure.ac` 和 `Makefile.am`:这两个文件是用于自动构建系统的,通常与GNU Autoconf和Automake工具链一起使用。它们定义了如何配置和构建项目,尽管在这个Windows环境下,可能不直接使用这些文件,但它们...
5、把下列的文件,拷贝到一个文件夹中,可以在不同的Windows使用。当然,这些exe只能win7版本才能使用。 ipmitool-1.8.17\src\.libs\ipmitool.exe C:\cygwin\bin\cygcrypto-1.0.0.dll C:\cygwin\bin\cyggcc_s-1.dll...
3. **DLL文件**:对于Windows用户,库提供了预编译的动态链接库(DLL)文件,使得开发者可以在Code::Blocks或其他IDE中直接引用,无需自行编译。 4. **移植性**:由于qrencode是跨平台的,所以不仅适用于Windows,...
2. **兼容性**: MinGW编译出的程序是原生的Windows可执行文件,不需要依赖任何DLL(动态链接库),因此可以方便地在没有MinGW的系统上运行。 3. **GCC支持**: MinGW集成了GCC,这是一个强大的、广泛使用的编译器,...