ALSA交叉编译

转载地址:http://blog.chinaunix.net/uid-22950545-id-2600583.html

ALSA交叉编译

1,  下载alsa-lib-1.0.15rc2.tar.bz2

 http://download.chinaunix.net/download/0001000/358.shtml

或者http://www.alsa-project.org/main/index.php/Main_Page

2,  tar jxvf alsa-lib-1.0.15rc2.tar.bz2

cd alsa-lib-1.0.15rc2

          ./configure --host=arm-none-linux-gnueabi --prefix=/home/part2/alsa-lib

          make & make install

          这时在/home/part2/alsa-lib目录下就产生了一些头文件了。

       3/home/part2/alsa-lib-1.0.15rc2/test目录下有一些示例,我们可以试着交叉编译一下。

arm-none-linux-gnueabi-gcc -I/home/part2/alsa-lib/include -L/home/part2/alsa-lib-1.0.15rc2/src/.libs/ -lasound -o control control.c

注意这里一定要加上-L/home/part2/alsa-lib-1.0.15rc2/src/.libs/,否则会找不到alsa库,网上一些文章都没有加这个链接。

结果是没有问题的。但如果每次编译都输入这么一长串,很不方便,所以最好写个通用的Makefile文件,要编译时就make一下就OK了。

如下:

#Makefile

CC=arm-none-linux-gnueabi-gcc

 

TARGET=target

SRC=$(wildcard *.c)

 

OBJECT= ${SRC:.c=.o}

INCLUDES=-I/home/part2/alsa-lib/include

LIBPATH=-L/home/part2/alsa-lib-1.0.15rc2/src/.libs/

LDFLAGS=-lasound

 

all:$(TARGET)

 

$(OBJECT):$(SRC)

       $(CC) -c $(INCLUDES) $<

 

$(TARGET):$(OBJECT)

       $(CC) -o $@ $< $(LIBPATH) $(LDFLAGS)

 

.PHONY:clean

 

clean:

       @rm -rf $(OBJECT) $(TARGET) *~

 

------------------------------------------
本文乃原创!
转载请注明出处:http://sparklecliz.cublog.cn/
------------------------------------------
阅读更多

没有更多推荐了,返回首页