在Win7 64bit环境下 MinGW + msys 编译 ffmpeg
报错信息:
gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -std=c99 -c -o /tmp/ffconf.HNkUciqD.o /tmp/ffconf.wZbmRudj.c
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c:1:13: error: size of array 'test' is negative
int test[(int)sizeof(char*) - 7];
gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -std=c99 -fno-common -E -o /tmp/ffconf.HNkUciqD.o /tmp/ffconf.wZbmRudj.c
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c:3:2: error: #error "unsatisfied condition: defined(__PIC__) || defined(__pic__) || defined(PIC)"
#error "unsatisfied condition: defined(__PIC__) || defined(__pic__) || defined(PIC)"
gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -std=c99 -fno-common -fomit-frame-pointer -c -o /tmp/ffconf.HNkUciqD.o /tmp/ffconf.wZbmRudj.c
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c: In function 'main':
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c:17:1: error: bp cannot be used in asm here
}
gcc -o /tmp/ffconf.LasLvGVB.exe /tmp/ffconf.HNkUciqD.o
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.HNkUciqD.o:ffconf.wZbmRudj.c:(.text+0xc): undefined reference to `dlopen'
collect2.exe: error: ld returned 1 exit status
check_func dlopen -ldl
......
......
......
gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -std=c99 -fno-common -fomit-frame-pointer -c -o /tmp/ffconf.HNkUciqD.o /tmp/ffconf.wZbmRudj.c
In file included from C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c:2:0:
c:\mingw\include\io.h:301:1: error: unknown type name 'off64_t'
__CRT_INLINE off64_t lseek64 (int, off64_t, int);
^
c:\mingw\include\io.h:301:36: error: unknown type name 'off64_t'
__CRT_INLINE off64_t lseek64 (int, off64_t, int);
^
c:\mingw\include\io.h:302:1: error: unknown type name 'off64_t'
__CRT_INLINE off64_t lseek64 (int fd, off64_t offset, int whence) {
^
c:\mingw\include\io.h:302:39: error: unknown type name 'off64_t'
__CRT_INLINE off64_t lseek64 (int fd, off64_t offset, int whence) {
^
check_func_headers lzo/lzo1x.h lzo1x_999_compress
check_ld
check_cc
BEGIN /tmp/ffconf.wZbmRudj.c
1
2#include <lzo/lzo1x.h>
3int main(int argc, char **argv){
4 return (long) lzo1x_999_compress;
5}
END /tmp/ffconf.wZbmRudj.c
gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -std=c99 -fno-common -fomit-frame-pointer -c -o /tmp/ffconf.HNkUciqD.o /tmp/ffconf.wZbmRudj.c
C:/Users/ADMINI~1/AppData/Local/Temp/ffconf.wZbmRudj.c:2:23: fatal error: lzo/lzo1x.h: No such file or directory
#include <lzo/lzo1x.h>
^
compilation terminated.
[解决办法]
干嘛要编译,下一个就行了
[解决办法]
./configure
make