Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

播客编译出错解决方案

[复制链接]
andy888 发表于 2007-5-25 15:54:48 | 显示全部楼层 |阅读模式
出错信息

  1. [root@ws x264-linux-Comsenz]# make install
  2. gcc -O4 -ffast-math  -Wall -I. -DHAVE_MALLOC_H -DHAVE_MMX -DHAVE_SSE3 -DARCH_X86 -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer   -c -o x264.o x264.c
  3. gcc -O4 -ffast-math  -Wall -I. -DHAVE_MALLOC_H -DHAVE_MMX -DHAVE_SSE3 -DARCH_X86 -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer   -c -o matroska.o matroska.c
  4. gcc -O4 -ffast-math  -Wall -I. -DHAVE_MALLOC_H -DHAVE_MMX -DHAVE_SSE3 -DARCH_X86 -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer   -c -o muxers.o muxers.c
  5. gcc -O4 -ffast-math  -Wall -I. -DHAVE_MALLOC_H -DHAVE_MMX -DHAVE_SSE3 -DARCH_X86 -DSYS_LINUX -DHAVE_PTHREAD -s -fomit-frame-pointer   -c -o common/cpu.o common/cpu.c
  6. common/cpu.c: In function `x264_cpu_num_processors':
  7. common/cpu.c:220: warning: passing arg 2 of `sched_getaffinity' makes integer from pointer without a cast
  8. common/cpu.c:220: error: too few arguments to function `sched_getaffinity'
  9. make: *** [common/cpu.o] Error 1

复制代码

解决办法
到包下面的common\cpu.c找到下面这段代码

  1. #elif defined(SYS_LINUX)
  2.     unsigned int bit;
  3.     int np;
  4.     cpu_set_t p_aff;
  5.     memset( &p_aff, 0, sizeof(p_aff) );
  6.     sched_getaffinity( 0, &p_aff );
  7.     for( np = 0, bit = 0; bit < sizeof(p_aff); bit++ )
  8.         np += (((uint8_t *)&p_aff)[bit / 8] >> (bit % 8)) & 1;
  9.     return np;
复制代码

修改成为


  1. #elif defined(SYS_LINUX)
  2.     int np;
  3.     np=2;
  4.     return np;
复制代码

其中np=2为CPU个数,改成当前你的CPU个数
安笛 发表于 2007-5-25 16:03:55 | 显示全部楼层
顶一个~~
回复

使用道具 举报

antdk 发表于 2007-5-25 16:04:04 | 显示全部楼层
顶一个,:)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-24 03:51 , Processed in 0.022253 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表