QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1880|回复: 3

qt怎样检查alsa库是否存在?

[复制链接]
发表于 2006-11-29 12:17:31 | 显示全部楼层 |阅读模式
比如如果系统有alsa库,就编译含alsa的代码,否则编译含oss的代码。c文件中可以设成
#if ALSA
...
#else
...
#end

项目文件*.pro该怎样设置?
发表于 2006-11-29 17:32:01 | 显示全部楼层
这个一般是在configure脚本里做的,configure后生成config.h,config.h来定义系统包含了那些模块
如果configure检查发现有alsa库,就在config.h里加上#define ALSA,C源码里#include "config.h"就行了

configure检查的方法一般是写一段简短的使用该模块功能的代码,并编译、运行,如果没有错误就认为该模块存在。
回复

使用道具 举报

 楼主| 发表于 2006-11-29 18:46:10 | 显示全部楼层
参考qmake教程,我找到一个解决办法,虽然不是特别完善:
ALIB=$$system(ls /usr/lib|grep libasound)
contains(ALIB,libasound.so){
  LIBS+=-lasound
  DEFINES+=ALSA
}

版主可否提供一个configure中检查alsa库的代码?我打算将该代码修改后放到qt的pro项目文件中,以替换上面的代码。
回复

使用道具 举报

发表于 2006-12-5 03:48:44 | 显示全部楼层
qmake有自己的方式
configure是autoconf/automake里面的
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-5-6 06:40 , Processed in 0.112407 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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