目前沒有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中,明天繼續測試一下。