使用Android Studio调用C++ 代码-log4cplus

http://blog.csdn.net/wb175208/article/details/52577167
http://blog.csdn.net/wb175208/article/details/52577167

F:\Sdk\ndk-bundle\build\ndk-build.cmd -- 用这个命令来编译C++源码

产生建立一个文件夹,如下图所示:


其中jni为源码存放路径及编译选项 Android.mk 与 Application.mk 的存放路径,如下图所示:


其中  Android.mk 里面是编译的文件说明,如下所示:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE    := ljttestlog
include $(BUILD_SHARED_LIBRARY)

LOCAL_STATIC_LIBRARIES :=  ljtliblog4cpp        

LOCAL_C_INCLUDES += log4cplus/include/log4cplus \
log4cplus/include/log4cplus/boost \
log4cplus/include/log4cplus/config \
log4cplus/include/log4cplus/helpers \
log4cplus/include/log4cplus/internal \
log4cplus/include/log4cplus/spi \
log4cplus/include/log4cplus/thread

LOCAL_SRC_FILES :=  log4cplus/src/appenderattachableimpl.cxx \
  log4cplus/src/appender.cxx \
  log4cplus/src/asyncappender.cxx \
  log4cplus/src/clogger.cxx \ 
  log4cplus/src/configurator.cxx \
  log4cplus/src/connectorthread.cxx \
  log4cplus/src/consoleappender.cxx \
  log4cplus/src/cygwin-win32.cxx \
  log4cplus/src/env.cxx \
  log4cplus/src/factory.cxx \
  log4cplus/src/fileappender.cxx \
  log4cplus/src/fileinfo.cxx \
  log4cplus/src/filter.cxx \
  log4cplus/src/global-init.cxx \
  log4cplus/src/hierarchy.cxx \
  log4cplus/src/hierarchylocker.cxx \
  log4cplus/src/layout.cxx \
  log4cplus/src/log4judpappender.cxx \
  log4cplus/src/lockfile.cxx \
  log4cplus/src/logger.cxx \
  log4cplus/src/loggerimpl.cxx \
  log4cplus/src/loggingevent.cxx \
  log4cplus/src/loggingmacros.cxx \
  log4cplus/src/loglevel.cxx \
  log4cplus/src/loglog.cxx \
  log4cplus/src/logloguser.cxx \
  log4cplus/src/mdc.cxx \
  log4cplus/src/ndc.cxx \
  log4cplus/src/nullappender.cxx \
  log4cplus/src/objectregistry.cxx \
  log4cplus/src/patternlayout.cxx \
  log4cplus/src/pointer.cxx \
  log4cplus/src/property.cxx \
  log4cplus/src/queue.cxx \
  log4cplus/src/rootlogger.cxx \
  log4cplus/src/sleep.cxx \
  log4cplus/src/snprintf.cxx \
  log4cplus/src/socketappender.cxx \
  log4cplus/src/socketbuffer.cxx \
  log4cplus/src/socket.cxx \
  log4cplus/src/stringhelper.cxx \
  log4cplus/src/stringhelper-clocale.cxx \
  log4cplus/src/stringhelper-cxxlocale.cxx \
  log4cplus/src/stringhelper-iconv.cxx \
  log4cplus/src/syncprims.cxx \
  log4cplus/src/syslogappender.cxx \
  log4cplus/src/threads.cxx \
  log4cplus/src/timehelper.cxx \
  log4cplus/src/tls.cxx \
  log4cplus/src/version.cxx
Application.mk 为编译选项,如下图所示:

APP_STL:=gnustl_static
APP_CPPFLAGS:=-frtti -fexceptions 
APP_ABI := all
APP_PLATFORM := android-16
APP_OPIM :=debug
\log4cplus_jni\jni\log4cplus 文件夹下面为 log4cplus 的源码
在log4cplus_jni\jni文件夹下面 shift+右键 ,在此处打开命令窗口,在命令里面敲 F:\Sdk\ndk-bundle\build\ndk-build ,则 ndk-build.cmd 会根据 Android.mk+Application.mk 来进行编译。

编译成功后,log4cplus_jni\lib 中为编译好的结果   log4cplus_jni\obj 为编译的中间文件

-----结果未测试,因为中间一个cxx 的源文件未能编译过,故未能截图后面的部分。

但是有一个思路可以测试一下 ,就是把 log4cplus 的头文件和源文件加进 Android Studio 里面,进行编译。

下面是运用网上一个现成的在Android里面编译好的 log4cplus  的库,进行测试并调用 。




















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值