Dear Wes, These are all problems fixed in recent commits to SVN. Had you pulled sword from SVN before I answered with instructions? If so, you should pull again. I committed my latest code just before sending my first email with instructions to you.
Wes Widner wrote: > Troy, > > I'm building on a 64bit Ubuntu 9.10 laptop. > > Adding in the extra include directory I got it to compile. Actually, I > entered the full path instead of a relative path. I'm guessing getting > the paths problem solved in a programmatic fashion would be a great > first step in cleaning things up. > > At any rate, now the linker fails with the following: > SharedLibrary : libsword.so > /usr/src/android-ndk-r3-crystax/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin/../lib/gcc/arm-eabi/4.4.0/../../../../arm-eabi/bin/ld: > cannot find -lstlport > collect2: ld returned 1 exit status > > I'm guessing this is because I don't have STL support properly built > yet. Do you know how I should go about building it for > android-ndk-r3-crystax? > > Thanks, > -Wes > > > On Sun, Apr 18, 2010 at 11:36 PM, Troy A. Griffitts > <scr...@crosswire.org <mailto:scr...@crosswire.org>> wrote: > > Hey Wes, > > Glad you can use the prebuilt library. > > Can you tell me if you have this line for both sword and swordcore in > your sword/bindings/java-jni/jni/Android.mk > > LOCAL_C_INCLUDES := ../src/sword/include > ../src/sword/include/internal/regex > > Your directories are slightly off from what mine are. Notice I have my > ndk in my home directory, not my src directory. > > May I ask what platform you are building on? > > Troy > > > Wes Widner wrote: > > Thanks Troy, > > > > I'm now able to use your prebuilt libsword.so library in my android > > application. This will at least let me continue building the > Android app > > I had in mind initially. > > > > However I would still like to learn how to at least build the > library on > > my own, I'd like to help as much as I can as well, but I figure > getting > > it to build is a good first step. > > > > I moved my code to the following directories: > > /usr/src/bishop > > /usr/src/sword > > /usr/src/android-ndk-r3-crystax > > > > Now it compiles a bit farther, but it still throws an error: > > Compile thumb : swordcore <= > > apps/bishop/../../../bishop/jni/../../../src/utilfuns/regex.c > > apps/bishop/../../../bishop/jni/../../../src/utilfuns/regex.c:177:19: > > error: regex.h: No such file or directory > > apps/bishop/../../../bishop/jni/../../../src/utilfuns/regex.c:942: > > error: expected '=', ',', ';', 'asm' or '__attribute__' before > > 're_syntax_options' > > > > Other errors follow, but I assume they are cascading from these. > > > > -Wes > > > > > > On Sun, Apr 18, 2010 at 8:01 PM, Troy A. Griffitts > <scr...@crosswire.org <mailto:scr...@crosswire.org> > > <mailto:scr...@crosswire.org <mailto:scr...@crosswire.org>>> wrote: > > > > Yes, unless you want to rebuild libsword.so, you don't need > the ndk. > > Simply place libsword.so at: > > > > bishop/libs/armeabi/libsword.so > > > > > > But again, the most useful thing at this stage would be to help me > > stabilize libsword.so > > > > But I understand if you'd rather work on your frontend. I'll > keep you > > posted on my progress with libsword.so for android. > > > > The issues you've posted below seem to have something to do > with your > > paths. Maybe you could try putting things relative to the > same place I > > have my stuff. It is quite possible I have a path setup > somewhere which > > depends on my directory structure. > > > > /home/scribe/src/sword/ > > /home/scribe/src/bishop/ > > /home/scribe/android-ndk-r3-crystax/ > > /home/scribe/android-ndk-r3-crystax/apps/bishop/Application.mk > > > > with: > > > > APP_PROJECT_PATH := $(call my-dir)/../../../src/bishop > > APP_MODULES := sword swordcore > > APP_PLATFORM := android-3 > > > > > > I'm sure you could change /home/scribe to your $HOME, but > maybe try to > > put everything else relative to your home like mine and see if > it works. > > Once we get your setup working maybe we can determine which > component > > is counting on another being at a certain location, and if we > can easily > > break that requirement. > > > > Troy > > > > > > > > Wes Widner wrote: > > > Troy, > > > > > > Thank you VERY much for pointing me in the right direction. > > > > > > I've gotten crystax and have created a test project of my > own. But > > when > > > I attempt to run 'make APP=bishop' (I named my test app > bishop as > > well) > > > I get the following: > > > Android NDK: Building for application 'bishop' > > > Compile++ thumb: sword <= /usr/src/bishop/jni/swordstub.cpp > > > /usr/src/bishop/jni/swordstub.cpp:25:21: warning: utilstr.h: > No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:26:23: warning: > swversion.h: No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:27:19: warning: swmgr.h: > No such > > file > > > or directory > > > /usr/src/bishop/jni/swordstub.cpp:28:19: warning: swlog.h: > No such > > file > > > or directory > > > /usr/src/bishop/jni/swordstub.cpp:29:21: warning: filemgr.h: > No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:30:22: warning: > swmodule.h: No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:31:22: warning: > versekey.h: No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:32:23: warning: > localemgr.h: No such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:33:24: warning: > treekeyidx.h: No > > such > > > file or directory > > > /usr/src/bishop/jni/swordstub.cpp:34:24: warning: > installmgr.h: No > > such > > > file or directory > > > In file included from /usr/src/bishop/jni/swordstub.cpp:36: > > > /usr/src/bishop/jni/webmgr.hpp:23:22: warning: swfilter.h: > No such > > file > > > or directory > > > /usr/src/bishop/jni/webmgr.hpp:24:27: warning: > markupfiltmgr.h: No > > such > > > file or directory > > > /usr/src/bishop/jni/webmgr.hpp:25:24: warning: osiswordjs.h: > No such > > > file or directory > > > /usr/src/bishop/jni/webmgr.hpp:26:24: warning: thmlwordjs.h: > No such > > > file or directory > > > /usr/src/bishop/jni/webmgr.hpp:27:23: warning: gbfwordjs.h: No > > such file > > > or directory > > > In file included from /usr/src/bishop/jni/swordstub.cpp:22: > > > build/platforms/android-3/arch-arm/usr/include/jni.h:489: > note: the > > > mangling of 'va_list' has changed in GCC 4.4 > > > In file included from /usr/src/bishop/jni/swordstub.cpp:36: > > > /usr/src/bishop/jni/webmgr.hpp:29: error: 'sword' is not a > > namespace-name > > > /usr/src/bishop/jni/webmgr.hpp:29: error: expected > namespace-name > > before > > > ';' token > > > /usr/src/bishop/jni/webmgr.hpp:31: error: expected class-name > > before '{' > > > token > > > /usr/src/bishop/jni/webmgr.hpp:32: error: ISO C++ forbids > > declaration of > > > 'OSISWordJS' with no type > > > /usr/src/bishop/jni/webmgr.hpp:32: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:33: error: ISO C++ forbids > > declaration of > > > 'ThMLWordJS' with no type > > > /usr/src/bishop/jni/webmgr.hpp:33: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:34: error: ISO C++ forbids > > declaration of > > > 'GBFWordJS' with no type > > > /usr/src/bishop/jni/webmgr.hpp:34: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:35: error: ISO C++ forbids > > declaration of > > > 'SWModule' with no type > > > /usr/src/bishop/jni/webmgr.hpp:35: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:36: error: ISO C++ forbids > > declaration of > > > 'SWModule' with no type > > > /usr/src/bishop/jni/webmgr.hpp:36: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:37: error: ISO C++ forbids > > declaration of > > > 'SWModule' with no type > > > /usr/src/bishop/jni/webmgr.hpp:37: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:38: error: ISO C++ forbids > > declaration of > > > 'SWModule' with no type > > > /usr/src/bishop/jni/webmgr.hpp:38: error: expected ';' > before '*' > > token > > > /usr/src/bishop/jni/webmgr.hpp:68: error: 'SWModule' has not > been > > declared > > > /usr/src/bishop/jni/webmgr.hpp:68: error: 'ConfigEntMap' has > not been > > > declared > > > /usr/src/bishop/jni/webmgr.hpp:68: error: 'ConfigEntMap' has > not been > > > declared > > > /usr/src/bishop/jni/webmgr.hpp:68: error: expected ',' or > '...' before > > > 'start' > > > /usr/src/bishop/jni/webmgr.hpp: In constructor > 'WebMgr::WebMgr(const > > > char*)': > > > /usr/src/bishop/jni/webmgr.hpp:42: error: class 'WebMgr' > does not have > > > any field named 'SWMgr' > > > /usr/src/bishop/jni/webmgr.hpp:42: error: expected > type-specifier > > before > > > 'MarkupFilterMgr' > > > /usr/src/bishop/jni/webmgr.hpp:42: error: expected ')' before > > > 'MarkupFilterMgr' > > > /usr/src/bishop/jni/webmgr.hpp:43: error: 'defaultGreekLex' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:44: error: 'defaultHebLex' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:45: error: > 'defaultGreekParse' was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:46: error: 'defaultHebParse' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:48: error: 'osisWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:48: error: expected > type-specifier > > before > > > 'OSISWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:48: error: expected ';' before > > 'OSISWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:49: error: 'thmlWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:49: error: expected > type-specifier > > before > > > 'ThMLWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:49: error: expected ';' before > > 'ThMLWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:50: error: 'gbfWordJS' was > not declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:50: error: expected > type-specifier > > before > > > 'GBFWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:50: error: expected ';' before > > 'GBFWordJS' > > > /usr/src/bishop/jni/webmgr.hpp:51: error: 'Load' was not > declared in > > > this scope > > > /usr/src/bishop/jni/webmgr.hpp:58: error: 'setGlobalOption' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp: In destructor > 'WebMgr::~WebMgr()': > > > /usr/src/bishop/jni/webmgr.hpp:62: error: 'osisWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:63: error: 'thmlWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:64: error: 'gbfWordJS' was > not declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp: In member function 'void > > > WebMgr::AddGlobalOptions(int*, int&, int)': > > > /usr/src/bishop/jni/webmgr.hpp:71: error: request for member > > 'Markup' in > > > '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:71: error: 'FMT_THML' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/webmgr.hpp:72: error: request for member > > > 'AddOptionFilter' in '* module', which is of non-class type > 'int' > > > /usr/src/bishop/jni/webmgr.hpp:72: error: 'thmlWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:75: error: request for member > > 'Markup' in > > > '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:75: error: 'FMT_GBF' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/webmgr.hpp:76: error: request for member > > > 'AddOptionFilter' in '* module', which is of non-class type > 'int' > > > /usr/src/bishop/jni/webmgr.hpp:76: error: 'gbfWordJS' was > not declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:80: error: 'SWMgr' has not been > > declared > > > /usr/src/bishop/jni/webmgr.hpp:80: error: 'start' was not > declared in > > > this scope > > > /usr/src/bishop/jni/webmgr.hpp:80: error: 'end' was not declared > > in this > > > scope > > > /usr/src/bishop/jni/webmgr.hpp:83: error: request for member > > 'getConfig' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:84: error: 'defaultGreekLex' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:86: error: request for member > > 'getConfig' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:87: error: 'defaultHebLex' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:89: error: request for member > > 'getConfig' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:90: error: > 'defaultGreekParse' was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:92: error: request for member > > 'getConfig' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:93: error: 'defaultHebParse' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:95: error: request for member > > 'getConfig' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:96: error: 'OptionFilterMap' has > > not been > > > declared > > > /usr/src/bishop/jni/webmgr.hpp:96: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/webmgr.hpp:97: error: 'it' was not > declared in > > this > > > scope > > > /usr/src/bishop/jni/webmgr.hpp:97: error: 'optionFilters' > was not > > > declared in this scope > > > /usr/src/bishop/jni/webmgr.hpp:98: error: request for member > > > 'AddOptionFilter' in '* module', which is of non-class type > 'int' > > > /usr/src/bishop/jni/webmgr.hpp:102: error: request for > member 'Markup' > > > in '* module', which is of non-class type 'int' > > > /usr/src/bishop/jni/webmgr.hpp:102: error: 'FMT_OSIS' was > not declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:103: error: request for member > > > 'AddOptionFilter' in '* module', which is of non-class type > 'int' > > > /usr/src/bishop/jni/webmgr.hpp:103: error: 'osisWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp: In member function 'void > > > WebMgr::setJavascript(bool)': > > > /usr/src/bishop/jni/webmgr.hpp:109: error: 'osisWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:110: error: 'thmlWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/webmgr.hpp:111: error: 'gbfWordJS' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp: At global scope: > > > /usr/src/bishop/jni/swordstub.cpp:46: error: 'sword' is not a > > namespace-name > > > /usr/src/bishop/jni/swordstub.cpp:46: error: expected > namespace-name > > > before ';' token > > > /usr/src/bishop/jni/swordstub.cpp:50: error: expected > constructor, > > > destructor, or type conversion before '*' token > > > /usr/src/bishop/jni/swordstub.cpp:52: error: expected class-name > > before > > > '{' token > > > /usr/src/bishop/jni/swordstub.cpp: In constructor > > > 'AndroidLogger::AndroidLogger()': > > > /usr/src/bishop/jni/swordstub.cpp:57: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:58: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:59: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:60: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:61: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp: In member function > 'virtual void > > > AndroidLogger::logMessage(const char*, int) const': > > > /usr/src/bishop/jni/swordstub.cpp:64: error: 'SWBuf' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:64: error: expected ';' > before 'msg' > > > /usr/src/bishop/jni/swordstub.cpp:65: error: 'msg' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:66: error: 'msg' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function 'void init()': > > > /usr/src/bishop/jni/swordstub.cpp:73: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:74: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:74: error: 'SWLog' has not > been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:75: error: 'SWBuf' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:75: error: expected ';' before > > 'baseDir' > > > /usr/src/bishop/jni/swordstub.cpp:76: error: expected ';' before > > 'confPath' > > > /usr/src/bishop/jni/swordstub.cpp:78: error: 'FileMgr' has not > > been declared > > > /usr/src/bishop/jni/swordstub.cpp:78: error: 'confPath' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:79: error: 'FileMgr' has not > > been declared > > > /usr/src/bishop/jni/swordstub.cpp:82: error: 'SWConfig' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:82: error: expected ';' before > > 'config' > > > /usr/src/bishop/jni/swordstub.cpp:83: error: 'config' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function 'void > initInstall()': > > > /usr/src/bishop/jni/swordstub.cpp:93: error: 'installMgr' > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:94: error: 'SWBuf' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:94: error: expected ';' before > > 'baseDir' > > > /usr/src/bishop/jni/swordstub.cpp:95: error: expected ';' before > > 'confPath' > > > /usr/src/bishop/jni/swordstub.cpp:97: error: 'FileMgr' has not > > been declared > > > /usr/src/bishop/jni/swordstub.cpp:97: error: 'confPath' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:98: error: 'FileMgr' has not > > been declared > > > /usr/src/bishop/jni/swordstub.cpp:101: error: 'SWConfig' was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:101: error: expected ';' > before > > 'config' > > > /usr/src/bishop/jni/swordstub.cpp:102: error: 'config' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:105: error: expected > type-specifier > > > before 'InstallMgr' > > > /usr/src/bishop/jni/swordstub.cpp:105: error: expected ';' > before > > > 'InstallMgr' > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > Java_org_crosswire_android_sword_SWMgr_version(JNIEnv*, > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:116: error: 'SWVersion' > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:116: error: expected ';' > before 'v' > > > /usr/src/bishop/jni/swordstub.cpp:117: error: 'v' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > Java_org_crosswire_android_sword_SWMgr_getPrefixPath(JNIEnv*, > > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:139: error: 'class WebMgr' > has no > > > member named 'prefixPath' > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > Java_org_crosswire_android_sword_SWMgr_getConfigPath(JNIEnv*, > > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:147: error: 'class WebMgr' > has no > > > member named 'configPath' > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jobjectArray* > > > Java_org_crosswire_android_sword_SWMgr_getModInfoList(JNIEnv*, > > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:157: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:157: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:157: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:157: error: 'class WebMgr' > has no > > > member named 'Modules' > > > /usr/src/bishop/jni/swordstub.cpp:162: error: 'SWLog' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:175: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:175: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:175: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:175: error: 'class WebMgr' > has no > > > member named 'Modules' > > > /usr/src/bishop/jni/swordstub.cpp:176: error: 'SWModule' was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:176: error: 'module' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:179: error: 'SWBuf' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:179: error: expected ';' > before > > 'type' > > > /usr/src/bishop/jni/swordstub.cpp:180: error: expected ';' > before > > 'cat' > > > /usr/src/bishop/jni/swordstub.cpp:181: error: expected ';' > before > > 'version' > > > /usr/src/bishop/jni/swordstub.cpp:182: error: 'cat' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:182: error: 'type' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:187: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:189: error: 'type' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:191: error: 'version' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jobject* > > > Java_org_crosswire_android_sword_SWMgr_getModuleByName(JNIEnv*, > > > _jobject*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:216: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:216: error: 'module' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:216: error: 'class WebMgr' > has no > > > member named 'getModule' > > > /usr/src/bishop/jni/swordstub.cpp:220: error: 'SWBuf' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:220: error: expected ';' > before > > 'type' > > > /usr/src/bishop/jni/swordstub.cpp:221: error: expected ';' > before > > 'cat' > > > /usr/src/bishop/jni/swordstub.cpp:222: error: 'cat' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:222: error: 'type' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:226: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:228: error: 'type' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function 'void > > > Java_org_crosswire_android_sword_SWMgr_setGlobalOption(JNIEnv*, > > > _jobject*, _jstring*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:247: error: 'class WebMgr' > has no > > > member named 'setGlobalOption' > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > Java_org_crosswire_android_sword_SWMgr_getGlobalOption(JNIEnv*, > > > _jobject*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:266: error: 'SWBuf' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:266: error: expected ';' > before > > 'value' > > > /usr/src/bishop/jni/swordstub.cpp:270: error: 'value' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:270: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > > Java_org_crosswire_android_sword_SWMgr_getGlobalOptionTip(JNIEnv*, > > > _jobject*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:286: error: 'SWBuf' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:286: error: expected ';' > before > > 'value' > > > /usr/src/bishop/jni/swordstub.cpp:290: error: 'value' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:290: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jstring* > > > Java_org_crosswire_android_sword_SWMgr_filterText(JNIEnv*, > _jobject*, > > > _jstring*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:307: error: 'SWBuf' was > not declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:307: error: expected ';' > before > > 'buf' > > > /usr/src/bishop/jni/swordstub.cpp:309: error: 'class WebMgr' > has no > > > member named 'setGlobalOption' > > > /usr/src/bishop/jni/swordstub.cpp:310: error: 'class WebMgr' > has no > > > member named 'filterText' > > > /usr/src/bishop/jni/swordstub.cpp:310: error: 'buf' was not > > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:315: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jobjectArray* > > > Java_org_crosswire_android_sword_SWMgr_getGlobalOptions(JNIEnv*, > > > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:329: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:329: error: expected ';' > before > > 'options' > > > /usr/src/bishop/jni/swordstub.cpp:331: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:331: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:331: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:331: error: 'options' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:339: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:339: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:339: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:339: error: 'options' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:340: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jobjectArray* > > > > Java_org_crosswire_android_sword_SWMgr_getGlobalOptionValues(JNIEnv*, > > > _jobject*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:359: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:359: error: expected ';' > before > > 'options' > > > /usr/src/bishop/jni/swordstub.cpp:364: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:364: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:364: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:364: error: 'options' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:371: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:371: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:371: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:371: error: 'options' was not > > declared > > > in this scope > > > /usr/src/bishop/jni/swordstub.cpp:372: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function 'void > > > Java_org_crosswire_android_sword_SWMgr_setCipherKey(JNIEnv*, > > _jobject*, > > > _jstring*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:392: error: 'class WebMgr' > has no > > > member named 'setCipherKey' > > > /usr/src/bishop/jni/swordstub.cpp: In function '_jobjectArray* > > > > Java_org_crosswire_android_sword_SWMgr_getAvailableLocales(JNIEnv*, > > > _jobject*)': > > > /usr/src/bishop/jni/swordstub.cpp:423: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:423: error: expected ';' > before > > > 'localeNames' > > > /usr/src/bishop/jni/swordstub.cpp:425: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:425: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:425: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:425: error: 'localeNames' > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:433: error: 'sword' has > not been > > declared > > > /usr/src/bishop/jni/swordstub.cpp:433: error: expected ';' > before 'it' > > > /usr/src/bishop/jni/swordstub.cpp:433: error: 'it' was not > declared in > > > this scope > > > /usr/src/bishop/jni/swordstub.cpp:433: error: 'localeNames' > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp:434: error: 'assureValidUTF8' > > was not > > > declared in this scope > > > /usr/src/bishop/jni/swordstub.cpp: In function 'void > > > Java_org_crosswire_android_sword_SWMgr_setDefaultLocale(JNIEnv*, > > > _jobject*, _jstring*)': > > > /usr/src/bishop/jni/swordstub.cpp:452: error: 'LocaleMgr' > has not been > > > declared > > > /usr/src/bishop/jni/swordstub.cpp: At global scope: > > > /usr/src/bishop/jni/swordstub.cpp:462: error: expected > constructor, > > > destructor, or type conversion before '*' token > > > make: *** [out/apps/bishop/armeabi/objs/sword/swordstub.o] > Error 1 > > > > > > /usr/src/bishop/jni is symlinked to > sword/bindings/java-jni/jni and my > > > Application.mk file in android-ndk-r3-crystax/apps/bishop > contains: > > > APP_PROJECT_PATH := /usr/src/bishop > > > APP_MODULES := sword swordcore > > > APP_PLATFORM := android-3 > > > > > > Do you know what I'm doing wrong? > > > > > > Also, I have gotten the libsword.so file from the bishop.apk > file you > > > posted earlier. Is there any way I could bind to it and use it? > > > > > > -Wes > > > > > > > > > On Sat, Apr 17, 2010 at 2:55 AM, Troy A. Griffitts > > <scr...@crosswire.org <mailto:scr...@crosswire.org> > <mailto:scr...@crosswire.org <mailto:scr...@crosswire.org>> > > > <mailto:scr...@crosswire.org <mailto:scr...@crosswire.org> > <mailto:scr...@crosswire.org <mailto:scr...@crosswire.org>>>> wrote: > > > > > > Dear Wes, > > > > > > The files I threw together are still very much a prototype / > > proof of > > > concept. But with that warning, everything you need to > build > > libsword > > > for android is included in the svn repository for the SWORD > > engine. You > > > can get the source here: > > > > > > svn co https://crosswire.org/svn/sword/trunk sword/ > > > > > > The Bishop code is merely a bunch of calls to try out > and help > > develop > > > the libsword bindings and really aren't worth checking in > > anywhere, but > > > if you'd like me to post them for an example, I can > certainly > > do that. > > > > > > Please again realize these android jni wrappers are > fragile and > > > incomplete. Please feel free to improve them, but please > > don't count on > > > them working dependably. > > > > > > Build instructions. > > > > > > You'll need an NDK with STL support. I have been trying > > crystax release > > > lately. You can find it on the web. > > > > > > After that, you'll need a basic Application.mk file to place > > in your > > > apps folder. Mine for bishop is here: > > > > > > ~/android-ndk-r3-crystax/apps/bishop/Application.mk > > > > > > and contains: > > > > > > APP_PROJECT_PATH := $(call my-dir)/../../../src/bishop > > > APP_MODULES := sword swordcore > > > APP_PLATFORM := android-3 > > > > > > and I have a symlink: > > > > > > ~/src/bishop/jni -> ~/src/sword/bindings/java-jni/jni/ > > > > > > ~/src/sword is simply a checkout of the current sword svn > > repository. > > > > > > Hope this helps get you started. Let me know your progress! > > > > > > Troy > > > > > > > > > > > > > > > Wes Widner wrote: > > > > Hey everyone, > > > > > > > > I'm new to this list so forgive me if it's answered > > elsewhere and I've > > > > simply overlooked it. Where is the source code for the > > android project > > > > that uses the sword library via jni? > > > > > > > > Also, does anyone know how I should go about building the > > jni library > > > > for sword? I can mange to build the .java interface files, > > but I am > > > > having trouble figuring out where to build the system > > library (the .so > > > > file). > > > > > > > > Any help is much appreciated! > > > > > > > > Blessings, > > > > -Wes > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > > > _______________________________________________ > > > > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>> > > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>>> > > > > http://www.crosswire.org/mailman/listinfo/sword-devel > > > > Instructions to unsubscribe/change your settings at > above page > > > > > > > > > _______________________________________________ > > > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>> > > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>>> > > > http://www.crosswire.org/mailman/listinfo/sword-devel > > > Instructions to unsubscribe/change your settings at > above page > > > > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > _______________________________________________ > > > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>> > > > http://www.crosswire.org/mailman/listinfo/sword-devel > > > Instructions to unsubscribe/change your settings at above page > > > > > > _______________________________________________ > > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > <mailto:sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org>> > > http://www.crosswire.org/mailman/listinfo/sword-devel > > Instructions to unsubscribe/change your settings at above page > > > > > > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > > http://www.crosswire.org/mailman/listinfo/sword-devel > > Instructions to unsubscribe/change your settings at above page > > > _______________________________________________ > sword-devel mailing list: sword-devel@crosswire.org > <mailto:sword-devel@crosswire.org> > http://www.crosswire.org/mailman/listinfo/sword-devel > Instructions to unsubscribe/change your settings at above page > > > > ------------------------------------------------------------------------ > > _______________________________________________ > sword-devel mailing list: sword-devel@crosswire.org > http://www.crosswire.org/mailman/listinfo/sword-devel > Instructions to unsubscribe/change your settings at above page _______________________________________________ sword-devel mailing list: sword-devel@crosswire.org http://www.crosswire.org/mailman/listinfo/sword-devel Instructions to unsubscribe/change your settings at above page