• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            戰(zhàn)魂小筑

            討論群:309800774 知乎關(guān)注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

            NDK版本r8

            下載log4cpp-1.1.tar.gz并解壓

            默認情況下, log4cpp準備好了windows平臺的config文件, 但是linux下一般是通過configurator生成的.

            我先找了個linux生成了一下, 然后把config放在log4cpp/include/log4cpp/config.h, 內(nèi)容參見

            #ifndef _INCLUDE_LOG4CPP_CONFIG_H
            #define _INCLUDE_LOG4CPP_CONFIG_H 1
             
            /* include/log4cpp/config.h. Generated automatically at end of configure. */
            /* include/config.h.  Generated from config.h.in by configure.  */
            /* include/config.h.in.  Generated from configure.in by autoheader.  */
             
            /* Define to 1 if you have the <dlfcn.h> header file. */
            #ifndef LOG4CPP_HAVE_DLFCN_H 
            #define LOG4CPP_HAVE_DLFCN_H  1 
            #endif
             
            /* Define to 1 if you have the `ftime' function. */
            #ifndef LOG4CPP_HAVE_FTIME 
            #define LOG4CPP_HAVE_FTIME  1 
            #endif
             
            /* Define to 1 if you have the `gettimeofday' function. */
            #ifndef LOG4CPP_HAVE_GETTIMEOFDAY 
            #define LOG4CPP_HAVE_GETTIMEOFDAY  1 
            #endif
             
            /* define if the compiler has int64_t */
            #ifndef LOG4CPP_HAVE_INT64_T 
            #define LOG4CPP_HAVE_INT64_T  /**/ 
            #endif
             
            /* Define to 1 if you have the <inttypes.h> header file. */
            #ifndef LOG4CPP_HAVE_INTTYPES_H 
            #define LOG4CPP_HAVE_INTTYPES_H  1 
            #endif
             
            /* Define to 1 if you have the <io.h> header file. */
            /* #undef LOG4CPP_HAVE_IO_H */
             
            /* Define to 1 if you have the `idsa' library (-lidsa). */
            /* #undef LOG4CPP_HAVE_LIBIDSA */
             
            /* Define to 1 if you have the `localtime_r' function. */
            #ifndef LOG4CPP_HAVE_LOCALTIME_R 
            #define LOG4CPP_HAVE_LOCALTIME_R  1 
            #endif
             
            /* Define to 1 if you have the <memory.h> header file. */
            #ifndef LOG4CPP_HAVE_MEMORY_H 
            #define LOG4CPP_HAVE_MEMORY_H  1 
            #endif
             
            /* define if the compiler implements namespaces */
            #ifndef LOG4CPP_HAVE_NAMESPACES 
            #define LOG4CPP_HAVE_NAMESPACES  /**/ 
            #endif
             
            /* Define if you have POSIX threads libraries and header files. */
            #ifndef LOG4CPP_HAVE_PTHREAD 
            #define LOG4CPP_HAVE_PTHREAD  1 
            #endif
             
            /* define if the C library has snprintf */
            #ifndef LOG4CPP_HAVE_SNPRINTF 
            #define LOG4CPP_HAVE_SNPRINTF  /**/ 
            #endif
             
            /* define if the compiler has stringstream */
            #ifndef LOG4CPP_HAVE_SSTREAM 
            #define LOG4CPP_HAVE_SSTREAM  /**/ 
            #endif
             
            /* define if you have the <stdint.h> header file. */
            #ifndef LOG4CPP_HAVE_STDINT_H 
            #define LOG4CPP_HAVE_STDINT_H  /**/ 
            #endif
             
            /* Define to 1 if you have the <stdlib.h> header file. */
            #ifndef LOG4CPP_HAVE_STDLIB_H 
            #define LOG4CPP_HAVE_STDLIB_H  1 
            #endif
             
            /* Define to 1 if you have the <strings.h> header file. */
            #ifndef LOG4CPP_HAVE_STRINGS_H 
            #define LOG4CPP_HAVE_STRINGS_H  1 
            #endif
             
            /* Define to 1 if you have the <string.h> header file. */
            #ifndef LOG4CPP_HAVE_STRING_H 
            #define LOG4CPP_HAVE_STRING_H  1 
            #endif
             
            /* Define to 1 if you have the `syslog' function. */
            #ifndef LOG4CPP_HAVE_SYSLOG 
            #define LOG4CPP_HAVE_SYSLOG  1 
            #endif
             
            /* Define to 1 if you have the <sys/stat.h> header file. */
            #ifndef LOG4CPP_HAVE_SYS_STAT_H 
            #define LOG4CPP_HAVE_SYS_STAT_H  1 
            #endif
             
            /* Define to 1 if you have the <sys/types.h> header file. */
            #ifndef LOG4CPP_HAVE_SYS_TYPES_H 
            #define LOG4CPP_HAVE_SYS_TYPES_H  1 
            #endif
             
            /* define if threading is enabled */
            #ifndef LOG4CPP_HAVE_THREADING 
            #define LOG4CPP_HAVE_THREADING  1 
            #endif
             
            /* Define to 1 if you have the <unistd.h> header file. */
            #ifndef LOG4CPP_HAVE_UNISTD_H 
            #define LOG4CPP_HAVE_UNISTD_H  1 
            #endif
             
            /* Define to the sub-directory in which libtool stores uninstalled libraries.
               */
            #ifndef LOG4CPP_LT_OBJDIR 
            #define LOG4CPP_LT_OBJDIR  ".libs/" 
            #endif
             
            /* Name of package */
            #ifndef LOG4CPP_PACKAGE 
            #define LOG4CPP_PACKAGE  "log4cpp" 
            #endif
             
            /* Define to the address where bug reports for this package should be sent. */
            #ifndef LOG4CPP_PACKAGE_BUGREPORT 
            #define LOG4CPP_PACKAGE_BUGREPORT  "" 
            #endif
             
            /* Define to the full name of this package. */
            #ifndef LOG4CPP_PACKAGE_NAME 
            #define LOG4CPP_PACKAGE_NAME  "log4cpp" 
            #endif
             
            /* Define to the full name and version of this package. */
            #ifndef LOG4CPP_PACKAGE_STRING 
            #define LOG4CPP_PACKAGE_STRING  "log4cpp 1.1" 
            #endif
             
            /* Define to the one symbol short name of this package. */
            #ifndef LOG4CPP_PACKAGE_TARNAME 
            #define LOG4CPP_PACKAGE_TARNAME  "log4cpp" 
            #endif
             
            /* Define to the home page for this package. */
            #ifndef LOG4CPP_PACKAGE_URL 
            #define LOG4CPP_PACKAGE_URL  "" 
            #endif
             
            /* Define to the version of this package. */
            #ifndef LOG4CPP_PACKAGE_VERSION 
            #define LOG4CPP_PACKAGE_VERSION  "1.1" 
            #endif
             
            /* Define to necessary symbol if this constant uses a non-standard name on
               your system. */
            /* #undef LOG4CPP_PTHREAD_CREATE_JOINABLE */
             
            /* Define to 1 if you have the ANSI C header files. */
            #ifndef LOG4CPP_STDC_HEADERS 
            #define LOG4CPP_STDC_HEADERS  1 
            #endif
             
            /* define if pthread library is available */
            #ifndef LOG4CPP_USE_PTHREADS 
            #define LOG4CPP_USE_PTHREADS  1 
            #endif
             
            /* Version number of package */
            #ifndef LOG4CPP_VERSION 
            #define LOG4CPP_VERSION  "1.1" 
            #endif
             
            /* _INCLUDE_LOG4CPP_CONFIG_H */
            #endif 

             

            接著, 修改log4cpp/include/log4cpp/RemoteSyslogAppender.hh的包含,改為

            #ifdef WIN32
            #include <winsock2.h>
            #else
            #include <netdb.h>
            #include <sys/socket.h>
            #include <netinet/in.h>
            #include <arpa/inet.h>
            #endif

            可以刪除RemoteSyslogAppender.cpp里的這個定義即可

            添加Android.mk

            LOCAL_PATH := $(call my-dir)
             
            include $(CLEAR_VARS)
             
            LOCAL_MODULE := log4cpp
             
            LOCAL_SRC_FILES := \
            src/AbortAppender.cpp \
            src/Appender.cpp \
            src/AppendersFactory.cpp \
            src/AppenderSkeleton.cpp \
            src/BasicConfigurator.cpp \
            src/BasicLayout.cpp \
            src/BufferingAppender.cpp \
            src/Category.cpp \
            src/CategoryStream.cpp \
            src/Configurator.cpp \
            src/DllMain.cpp \
            src/DummyThreads.cpp \
            src/FactoryParams.cpp \
            src/FileAppender.cpp \
            src/Filter.cpp \
            src/FixedContextCategory.cpp \
            src/HierarchyMaintainer.cpp \
            src/IdsaAppender.cpp \
            src/LayoutAppender.cpp \
            src/LayoutsFactory.cpp \
            src/LevelEvaluator.cpp \
            src/Localtime.cpp \
            src/LoggingEvent.cpp \
            src/Manipulator.cpp \
            src/MSThreads.cpp \
            src/NDC.cpp \
            src/NTEventLogAppender.cpp \
            src/OmniThreads.cpp \
            src/OstreamAppender.cpp \
            src/PassThroughLayout.cpp \
            src/PatternLayout.cpp \
            src/PortabilityImpl.cpp \
            src/Priority.cpp \
            src/Properties.cpp \
            src/PropertyConfigurator.cpp \
            src/PropertyConfiguratorImpl.cpp \
            src/PThreads.cpp \
            src/RemoteSyslogAppender.cpp \
            src/RollingFileAppender.cpp \
            src/SimpleConfigurator.cpp \
            src/SimpleLayout.cpp \
            src/SmtpAppender.cpp \
            src/StringQueueAppender.cpp \
            src/StringUtil.cpp \
            src/SyslogAppender.cpp \
            src/TimeStamp.cpp \
            src/TriggeringEventEvaluatorFactory.cpp \
             
             
            LOCAL_C_INCLUDES := $(LOCAL_PATH) \
                                $(LOCAL_PATH)/include
                               
             
            include $(BUILD_STATIC_LIBRARY)
             
            編譯即可
            posted on 2013-11-14 17:11 戰(zhàn)魂小筑 閱讀(3221) 評論(0)  編輯 收藏 引用 所屬分類: 移動開發(fā)
            婷婷五月深深久久精品| 少妇精品久久久一区二区三区| 97久久精品无码一区二区 | 国产巨作麻豆欧美亚洲综合久久 | 欧美大香线蕉线伊人久久| 日韩人妻无码一区二区三区久久| 亚洲αv久久久噜噜噜噜噜| 国产成人精品白浆久久69| 国产精品免费久久久久久久久| 香蕉久久AⅤ一区二区三区| 久久丫精品国产亚洲av| 久久www免费人成精品香蕉| 国产精品成人久久久久三级午夜电影| 国产精品久久久久乳精品爆| 亚洲午夜久久久久久噜噜噜| 亚洲午夜精品久久久久久人妖| 亚洲AⅤ优女AV综合久久久| 国产精品美女久久久久网| 无夜精品久久久久久| 亚洲午夜久久久精品影院| 性欧美丰满熟妇XXXX性久久久 | 久久人妻少妇嫩草AV无码蜜桃| 久久www免费人成看片| 久久精品国产亚洲Aⅴ香蕉| 久久精品天天中文字幕人妻| 一本色道久久综合| 蜜臀久久99精品久久久久久| 99久久99久久精品国产| 国产日产久久高清欧美一区| 中文字幕久久精品无码| 天堂无码久久综合东京热| 久久精品国产国产精品四凭| 色综合久久中文综合网| 精品午夜久久福利大片| 久久久久人妻精品一区| 亚洲国产精品无码成人片久久| 午夜精品久久久内射近拍高清 | 久久精品国产99国产精偷| 久久精品国产精品亚洲毛片| 久久99久国产麻精品66| 国产香蕉久久精品综合网|