1、进入代码目录 运行autoscan
在当前目录下会生成configure.scan文件
重命名configure.scan为configure.in
并按如下修改
AC_PREREQ([2.65])
AC_INIT([vpn], [0.1], [ligao@comodo.com])
AM_INIT_AUTOMAKE(easyvpn, 0.1)
AC_CONFIG_SRCDIR([vpn.cpp])
AC_CONFIG_HEADERS([config.h])
# Checks for programs.
AC_PROG_CXX
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
AC_CHECK_HEADERS([arpa/inet.h fcntl.h memory.h netdb.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h unistd.h wchar.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_INLINE
AC_TYPE_INT32_T
AC_TYPE_SIZE_T
# Checks for library functions.
AC_FUNC_ERROR_AT_LINE
AC_FUNC_MALLOC
AC_CHECK_FUNCS([alarm inet_ntoa memmove memset select socket strchr strstr strtol])
AC_OUTPUT([Makefile])
2,运行 aclocal
生成aclocal.m4文件及autom4te.cache目录
3,运行autoconf
生成configure文件
4,运行autoheader生成config.h.in文件
5,手工生成Makefile.am文件
AM_CPPFLAGS = -pedantic -Wall -pipe -W -Wfloat-equal -Wcast-align -Wsign-compare /
-Wpointer-arith -Wswitch -Wunknown-pragmas -Wconversion -Wundef /
-Wcast-qual -Wno-long-long -DGLOOX_IMPORTS
AUTOMAKE_OPTIONS = foreign
noinst_PROGRAMS = easyvpn
easyvpn_SOURCES = vpn.cpp crypto_aes.cpp ConvertUTF.c NetWorksManager.cpp VpnTunnel.cpp
easyvpn_LDADD =
easyvpn_LDFLAGS = -pthread -lresolv -lresolv -lssl -lcrypto -lz -ldl -lgloox
easyvpn_CFLAGS = $(CPPFLAGS)
6,运行automake --add-missing
生成Makefile.in
7,运行./configure
生成Makefile