2

我正在 CentOS 6.2 上构建一个共享库。共享库将构建有一些cpp文件,头文件,c共享库和ffmpeg。共享库用于转换视频。当我像这样使用 g++ 编译时:

g++    DataType.h    h264function.h  h264function.cpp videoconvert.h videoconvert.cpp      stdafx.h stdafx.cpp YV12toRGB.h YV12toRGB.cpp -lMPCtrl -lavcodec -lavformat -lavutil -   lhcnetsdk -lPlayCtrl -lpthread -fPIC -shared -o libtest.so

它可以正常工作,并且可以将视频转换为标准h264编码。看起来用于构建库的文件是

很好。但是当我使用自动工具制作库时,它无法正常工作。这是我的 configure.in 和 Makefile.am:

生成文件.am:

prefix=/usr
lib_LTLIBRARIES=libhikvisiontranso.la

libhikvisiontranso_la_SOURCES=stdafx.h stdafx.cpp videoconvert.h videoconvert.cpp 
h264function.h h264function.cpp YV12toRGB.h YV12toRGB.cpp DataType.h 

libhikvisiontranso_la_LDFLAGS=-avoid-version -shared 
libhikvisiontranso_la_LIBADD=-lpthread -lMPCtrl -lhcnetsdk -lPlayCtrl -lavformat -    lavcodec -lavutil
ACLOCAL_AMFLAGS= -I m4

配置.in:

#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.63])
AC_INIT([hikvisiontranso],[1.0], [songxiawuren@gmail.com])
AM_INIT_AUTOMAKE([libhikvisiontranso.so],[1.0])
AC_CONFIG_SRCDIR([DataType.h])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([m4])
AT_INIT
# Checks for programs.
AC_PROG_CXX
AC_PROG_CC

# Checks for libraries.

# Checks for header files.
AC_CHECK_HEADERS([inttypes.h limits.h stddef.h stdint.h stdlib.h string.h])

# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_INLINE
AC_TYPE_INT16_T
AC_TYPE_INT32_T
AC_TYPE_INT64_T
AC_TYPE_INT8_T
AC_TYPE_SIZE_T
AC_TYPE_UINT16_T
AC_TYPE_UINT32_T
AC_TYPE_UINT64_T
AC_TYPE_UINT8_T

# Checks for library functions.
AC_FUNC_MALLOC
AC_PROG_LIBTOOL
AC_CONFIG_FILES([Makefile])
AC_OUTPUT

错误的输出是:

SDL Init

init console=1

Output #0, avi, to '/home/ningge/Desktop/HaikangDvr.avi':

Stream #0.0: Invalid Codec type -1

Height = 576; Width = 704;totalfram=90000

Segmentation fault (core dumped)

右边是:

SDL Init

init console=1

Output #0, avi, to '/home/ningge/Desktop/HaikangDvr.avi':

Stream #0.0: Video: mpeg4, yuv420p, 704x576, q=2-31, 200 kb/s, 90k tbn, 25 tbc

Height = 576; Width = 704;totalfram=90000

CSDLInit goOut 

我希望有人可以帮助我找出 automake 有什么问题。

4

0 回答 0