目前没有linux版本
已经具有:Android,iOS,Windows版本
对比Android版本,应该很容易写出linux下的makefile
只是不知thridparty的library如何编译出来?在doubango里面也没有说明
要编译tinyWRAP,需要到android-projects目录下执行
$ sh ../bindings/java/android/buildAll.sh
android-projects下的buildAll.sh是用来编译各个tinyXXX的,里面虽然说是可以编译出tinyDEMO,但其实并没有做,我做了相应的修改,增加了
echo building tinyDEMO....
make PROJECT=tinyDEMO clean
make PROJECT=tinyDEMO BT=shared $@ all
但是tinyDEMO下的droid-makefile还是有些问题,不能直接编译通过
要加上$(MARCH)
完整的droid-makefile:
APP := demo
#FFMPEG_LDFLAGS := -L../thirdparties/android/lib -lavutil -lswscale -lavcodec -lgcc
FFMPEG_LDFLAGS := -L../thirdparties/android/lib/$(MARCH) -lavutil -lswscale -lavcodec -lgcc -lx264 -lavcore
FFMPEG_LDFLAGS += -L../thirdparties/android/lib -lgsm -lspeexdsp -lspeex -lopencore-amrnb -ltheora -logg
CFLAGS := $(CFLAGS_COMMON) -I../tinySAK/src -I../tinyNET/src -I../tinySMS/include -I../tinyHTTP/include -I../tinySDP/include -I../tinyDAV/include -I../tinyMEDIA/include -I../tinySIP/include
CFLAGS += -I../tinyMSRP/include
LDFLAGS := $(LDFLAGS_COMMON) -Wl,-Bsymbolic,--whole-archive -Wl,--entry=main -lm $(FFMPEG_LDFLAGS) -ltinySAK_$(MARCH) -ltinyNET_$(MARCH) -ltinyHTTP_$(MARCH) -ltinyIPSec_$(MARCH) -ltinySIGCOMP_$(MARCH) -ltinySMS_$(MARCH) -ltinySDP_$(MARCH) -ltinyRTP_$(MARCH) -ltinyMEDIA_$(MARCH) -ltinyDAV_$(MARCH) -ltinySIP_$(MARCH)
LDFLAGS += -ltinyMSRP_$(MARCH)
all: $(APP)
OBJS = \
cmd.o \
common.o \
dssl.o \
invite.o \
main.o \
message.o \
options.o \
publish.o \
register.o \
subscribe.o
$(APP): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $^
%.o: %.c
$(CC) -c $(INCLUDE) $(CFLAGS) $< -o $@
install: $(APP)
$(ANDROID_SDK_ROOT)/tools/adb push $(APP) $(EXEC_DIR)/$(APP)
$(ANDROID_SDK_ROOT)/tools/adb shell chmod 777 $(EXEC_DIR)/$(APP)
ifneq ($(SN), )
$(ANDROID_SDK_ROOT)/tools/adb push $(SN) $(EXEC_DIR)
$(ANDROID_SDK_ROOT)/tools/adb shell chmod 777 $(EXEC_DIR)/$(SN)
endif
run:
$(ANDROID_SDK_ROOT)/tools/adb shell $(EXEC_DIR)/$(APP)
#dbg:
# $(MAKE) $(MAKEFILE) DEBUG="-g -DDEBUG"
# $(MAKE) $(MAKEFILE) install
clean:
@rm -f $(OBJS) $(APP)
编译出来的“demo”应该可以运行在android中,明天继续测试一下。
(秩名) |