(OK) 编译xerces-c-3.1.2(动态库)—CentOS 7— android-ndk
来源:互联网 发布:宝软网java软件下载 编辑:程序博客网 时间:2024/05/24 20:06
(OK) 编译xerces-c-3.1.2(动态库)—CentOS 7— android-ndk
export XERCES="/opt/cBPM-android/xerces-c-3.1.2/"
export NDK="/opt/android-on-linux/android-ndk-r10d/"
export SYSROOT="$NDK/platforms/android-21/arch-arm"
export CC="$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc"
export CXX="$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++"
export CFLAGS="--sysroot=$SYSROOT"
export LDFLAGS="--sysroot=$SYSROOT -nostdlib -L$NDK/sources/cxx-stl/stlport/libs/armeabi-v7a -L$SYSROOT/usr/lib -L/opt/cBPM-android/criteria-lin/lib -liconv -lstdc++ -lstlport -lc"
export CPPFLAGS="-fPIC -I$NDK/sources/cxx-stl/stlport/stlport -I$NDK/platforms/android-21/arch-arm/usr/include -I$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/include -I$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9/include-fixed -I$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9/include -I$XERCES/src/xercesc/xinclude -I$XERCES/tests/src/xinclude -I$XERCES/tests/src/xinclude/tests/xinclude"
// -nostdlib -Xlinker -R$SYSROOT/usr/lib $SYSROOT/usr/lib/crtbegin_static.o $SYSROOT/usr/lib/crtend_android.o
// ls /opt/android-on-linux/android-ndk-r10d/sources/cxx-stl/stlport/libs/armeabi-v7a
// libstlport_shared.so libstlport.so libstlport_static.a thumb
[root@localhost xerces-c-3.1.2]# ./configure --host=arm-linux-androideabi --enable-static --disable-shared --enable-transcoder-iconv
错误:configure: error: Xerces cannot function without a transcoder
解决方法如下:
//编译静态库
[root@localhost xerces-c-3.1.2]# ac_cv_func_iconv_open=yes ac_cv_func_iconv_close=yes ac_cv_func_mblen=yes ac_cv_func_wcstombs=yes ac_cv_func_mbstowcs=yes ac_cv_func_iconv=yes ./configure --host=arm-linux-androideabi --enable-static --disable-shared --enable-transcoder-iconv
[root@localhost xerces-c-3.1.2]# make -j5
//编译动态库
[root@localhost xerces-c-3.1.2]# gl_cv_header_working_stdint_h=yes ac_cv_func_iconv_open=yes ac_cv_func_iconv_close=yes ac_cv_func_mblen=yes ac_cv_func_wcstombs=yes ac_cv_func_mbstowcs=yes ac_cv_func_iconv=yes ./configure --host=arm-linux-androideabi --enable-transcoder-iconv
[root@localhost xerces-c-3.1.2]# make -j5
错误及解决方法:
错误:
xercesc/util/PlatformUtils.cpp:713:4: error: #error No timing support is configured for this platform.
stricmp.c:37:3: error: #error Need implementation of stricmp compatibility function
strnicmp.c:37:3: error: #error Need implementation of strnicmp compatibility function
解决方法,在 config.h 加下面一行
#define HAVE_GETTIMEOFDAY 1
#define HAVE_STRCASECMP 1
#define HAVE_STRNCASECMP 1
错误:
towupper.h conflicting declaration of C function 'int towupper(int)'
解决方法
towlower.h、towupper.h注释如下:
//extern int towlower(int wc);
//extern int towupper(int wc);
错误:
arm-linux-androideabi-g++: error: crtbegin_so.o: No such file or directory
arm-linux-androideabi-g++: error: crtend_so.o: No such file or directory
原因是ld找不到 crtbegin_so.o 和 crteng_so.o,
解决方法,在项目源码下面建立软连接
ln -s /opt/android-on-linux/android-ndk-r10d/platforms/android-21/arch-arm/usr/lib/crtbegin_so.o src
ln -s /opt/android-on-linux/android-ndk-r10d/platforms/android-21/arch-arm/usr/lib/crtend_so.o src
//成功编译动态库
[root@localhost xerces-c-3.1.2]# find . -name libxerces-c-3.1.so
./src/.libs/libxerces-c-3.1.so
//复制库文件(arm)
[root@localhost xerces-c-3.1.2]# cp ./src/.libs/libxerces-c-3.1.so /opt/cBPM-android/criteria-lin/lib
0
上一篇:nm命令与符号说明
下一篇:Android—adb shell—/system/bin/sh: ./executer: No such file or directory
相关热门文章
- test123
- 编写安全代码——小心有符号数...
- 使用openssl api进行加密解密...
- 一段自己打印自己的c程序...
- sql relay的c++接口
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
给主人留下些什么吧!~~
评论热议
0 0
- (OK) 编译xerces-c-3.1.2(动态库)—CentOS 7— android-ndk
- (OK) 编译xerces-c-3.1.2(动态库)—CentOS 7— android-ndk
- (OK) 编译xerces-c-3.1.2(静态库)—CentOS 7— android-ndk
- (OK) 编译xerces-c-3.1.2(静态库)—CentOS 7— android-ndk
- (OK) 编译libiconv-1.14(静态库)—CentOS 7— android-ndk
- (OK) 编译libiconv-1.14(静态库)—CentOS 7— android-ndk
- ( OK—C程序 ) Eclipse C/C++ — CentOS 7 + android-ndk + eclipse-cpp-mars-R
- (OK—C程序) Eclipse C/C++ — CentOS 7 + android-ndk + eclipse-cpp-mars-R
- ( OK—C++程序 ) Eclipse C/C++ — CentOS 7 + android-ndk + eclipse-cpp-mars-R
- (OK—C++程序) Eclipse C/C++ — CentOS 7 + android-ndk + eclipse-cpp-mars-R
- ( OK—C++程序 ) CodeBlocks — CentOS 7 + android-ndk
- (OK—C++程序) CodeBlocks — CentOS 7 + android-ndk
- ( OK ) CentOS 7 + android-ndk-r10d-linux-x86_64 + Android (ARM)—ndk-build
- (OK) CentOS 7 + android-ndk-r10d-linux-x86_64 + Android (ARM)—ndk-build
- 编译xerces-c (静态库)——sourceforge
- (OK) 编译cBPM-android—CentOS 7—NDK8—androideabi-4.7—API14—2版
- (OK) 编译cBPM-android—CentOS 7—NDK8—androideabi-4.7—API14—2版
- (OK) 编译cBPM-android—CentOS 7—NDK8—androideabi-4.7— API14
- (OK) 编译libiconv-1.14(静态库)—CentOS 7— android-ndk
- Android Activity中点击EditText以外的位置软键盘收起
- OGG-01820 Could not enable workspace
- nm命令与符号说明
- yaml在python上的应用
- (OK) 编译xerces-c-3.1.2(动态库)—CentOS 7— android-ndk
- 基于ObjC的轻量级Promise库——RWPromiseKit
- Console命令 来调试js
- JDBC连接Apache Drill
- Android—adb shell—/system/bin/sh: ./executer: No such file or directory
- 第五周项目2.2-游戏中的角色类
- Android 系统名字、版本、API level的对应关系
- Tizen 3.0大升级:采用Linux 4.1内核与Wayland、支持64位
- POJ 2104 K-th Number(快排 or 平方分割 or 归并树—求区间第k大数)
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
被南国易购骗了怎么办
wps演示卡住了怎么办
坚果云数据丢失怎么办
坚果云不更新怎么办?
天天中彩票维护怎么办
天猫买的东西发票怎么办
齐鲁医院没床位怎么办
房地产违约交房怎么办
中介收了钱不退怎么办
云联惠被骗的钱怎么办
云联惠被骗的人怎么办
婴儿肚脐凸出来怎么办
捷达伙伴电子扇老转怎么办
云支付买车怎么办
微信商城被骗怎么办
被恒宇商品骗了怎么办
广发二审被拒怎么办
商家一直不发货怎么办
商家迟迟不发货怎么办
鞋子饰品掉了怎么办
京东e卡卡密丢失怎么办
遇到找零钱骗局怎么办
遇到惠凯骗局怎么办?
vs2017多个函数怎么办
爱钱进倒闭了钱怎么办
被骗注册了公司怎么办
吃了转基因食物怎么办
微信无法付款怎么办
oppo手机黑屏打不开怎么办
三星手机黑屏打不开怎么办
拼多多发错货了怎么办
提示付款待签收怎么办
别人寄错东西怎么办
买东西被税了怎么办
中国邮政被税了怎么办
眼皮对眼影过敏怎么办
眼影过敏眼睛肿怎么办
澳洲打黑工寄钱怎么办
linux系统忘记密码怎么办
gofun客服打不通怎么办
中信客服打不通怎么办