Gary, I have prepared the changes for #1 and 4 below.
For #3 try defining CLUCENE_HOME with -DCLUCENE_HOME=../../some/path/ to where you built and installed CLucene. That *should* allow FindCLucene.cmake to locate the files appropriately. Now, if I could just ever remember my SVN password to make a commit to the source tree! Shame we can't have SSH transport for commits! --Greg On Sun, Oct 11, 2020 at 3:01 PM Greg Hellings <greg.helli...@gmail.com> wrote: > > > On Sun, Oct 11, 2020, 11:21 Gary Holmlund <gary.holml...@gmail.com> wrote: > >> Troy and Greg, >> >> I have compiled BibleTime with Sword 1.8.903 on Windows. To do this I >> had to make 4 changes to cmake files. The first and last one are easy >> changes. The second and third will need more effort to decide how to >> properly fix them. >> >> Thanks for your great efforts. >> >> Gary Holmlund >> >> >> 1. Find ICU Quiet. >> >> 52c52 >> < FIND_PACKAGE(ICU >> --- >> > FIND_PACKAGE(ICU QUIET >> > > This is curious. I wonder why. > > >> >> >> 2.I had to comment out the find of clucene. >> >> 55c55 >> < FIND_PACKAGE(CLucene QUIET) >> --- >> > #FIND_PACKAGE(CLucene QUIET) >> >> If it is not commented out, I get this error. >> >> CMake Error at cmake/FindCLucene.cmake:82 (FILE): >> FILE failed to open for reading (No such file or directory): >> >> C:/bibletime-tmp/b5/sword-prefix/src/sword-build/./CLucene/clucene-config.h >> >> NOTE: I find CLucene/clucene-config.h in the include directory. >> > > There should be a series of search paths it looks through. I'm not at my > computer right now to check, but if you define the search paths this should > be unnecessary. Tobias, I think, has a build script that demonstrates > defining the search path for CLucene. > > >> >> >> 3. buildtest.exe build error - I comment out the building of >> buildtest.exe in CMakeLists.txt >> >> 272,277c272,277 >> < ADD_EXECUTABLE(buildtest buildtest.cpp) >> < IF(BUILDING_STATIC) >> < TARGET_LINK_LIBRARIES(buildtest sword_static) >> < ELSE(BUILDING_STATIC) >> < TARGET_LINK_LIBRARIES(buildtest sword) >> < ENDIF(BUILDING_STATIC) >> --- >> > #ADD_EXECUTABLE(buildtest buildtest.cpp) >> > #IF(BUILDING_STATIC) >> > # TARGET_LINK_LIBRARIES(buildtest sword_static) >> > #ELSE(BUILDING_STATIC) >> > # TARGET_LINK_LIBRARIES(buildtest sword) >> > #ENDIF(BUILDING_STATIC) >> >> Here are the errors I got without this change. >> >> buildtest.cpp >> 5>C:\bibletime-tmp\sword\include\swkey.h(92,32): warning C4251: >> 'sword::SWKey::localeCache': class 'sword::SWKey::LocaleCache' needs to >> have dll-interface to be used by clients of class 'sword::SWKey' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swkey.h(79): message : see declaration >> of 'sword::SWKey::LocaleCache' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swconfig.h(125,34): warning C4251: >> 'sword::SWConfig::Sections': class >> 'std::map<sword::SWBuf,sword::ConfigEntMap,std::less<sword::SWBuf>,std::allocator<std::pair<const >> >> sword::SWBuf,sword::ConfigEntMap>>>' needs to have dll-interface to be >> used by clients of class 'sword::SWConfig' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swconfig.h(36): message : see >> declaration of >> 'std::map<sword::SWBuf,sword::ConfigEntMap,std::less<sword::SWBuf>,std::allocator<std::pair<const >> >> sword::SWBuf,sword::ConfigEntMap>>>' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swmodule.h(118,24): warning C4251: >> 'sword::SWModule::ownConfig': class >> 'sword::multimapwithdefault<sword::SWBuf,sword::SWBuf,std::less<sword::SWBuf>>' >> >> needs to have dll-interface to be used by clients of class >> 'sword::SWModule' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swconfig.h(35): message : see >> declaration of >> 'sword::multimapwithdefault<sword::SWBuf,sword::SWBuf,std::less<sword::SWBuf>>' >> >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swmodule.h(120,43): warning C4251: >> 'sword::SWModule::entryAttributes': class >> 'std::map<sword::SWBuf,sword::AttributeList,std::less<sword::SWBuf>,std::allocator<std::pair<const >> >> sword::SWBuf,sword::AttributeList>>>' needs to have dll-interface to be >> used by clients of class 'sword::SWModule' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swmodule.h(78): message : see >> declaration of >> 'std::map<sword::SWBuf,sword::AttributeList,std::less<sword::SWBuf>,std::allocator<std::pair<const >> >> sword::SWBuf,sword::AttributeList>>>' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swmodule.h(142,30): warning C4251: >> 'sword::SWModule::rawdisp': class 'sword::SWModule::StdOutDisplay' needs >> to have dll-interface to be used by clients of class 'sword::SWModule' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\sword\include\swmodule.h(107): message : see >> declaration of 'sword::SWModule::StdOutDisplay' >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5> Creating library >> C:/bibletime-tmp/b6/sword-prefix/src/sword-build/Release/buildtest.lib >> and object >> C:/bibletime-tmp/b6/sword-prefix/src/sword-build/Release/buildtest.exp >> 5>buildtest.obj : error LNK2019: unresolved external symbol "public: >> static char * sword::SWBuf::nullStr" (?nullStr@SWBuf@sword@@2PADA) >> referenced in function "public: __thiscall std::pair<class sword::SWBuf >> const ,class sword::multimapwithdefault<class sword::SWBuf,class >> sword::SWBuf,struct std::less<class sword::SWBuf> > >::pair<class >> sword::SWBuf const ,class sword::multimapwithdefault<class >> sword::SWBuf,class sword::SWBuf,struct std::less<class sword::SWBuf> > >> ><class sword::SWBuf &&>(struct std::piecewise_construct_t,class >> std::tuple<class sword::SWBuf &&>,class std::tuple<>)" >> (??$?0$$QAVSWBuf@sword@@$$Z$$V@?$pair@$$CBVSWBuf@sword >> @@V?$multimapwithdefault@VSWBuf@sword@@V12@U?$less@VSWBuf@sword@@@std@ >> @@2@@std@@QAE@Upiecewise_construct_t@1@V?$tuple@$$QAVSWBuf@sword@@@1@V >> ?$tuple@$$V@1@@Z) >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>C:\bibletime-tmp\b6\sword-prefix\src\sword-build\Release\buildtest.exe >> : fatal error LNK1120: 1 unresolved externals >> [C:\bibletime-tmp\b6\sword-prefix\src\sword-build\buildtest.vcxproj] >> 5>Done building project "sword.vcxproj" -- FAILED. >> > > This might be a question for Troy. I wonder if these are based on the > deprecations he has done this cycle? > > >> >> >> >> 4. I also ran into the problem in cmake/options.cmake that ZdPo Ster >> found. >> >> 29c29 >> < SET(SWORD_INSTALL_DIR "C:\\Program Files (x86)\\libsword\\") >> --- >> > SET(SWORD_INSTALL_DIR "C:/Program Files (x86)/libsword") >> >> NOTE: I override this value externally anyway. >> > > Thanks for the confirmation. > > I'll get in fixes for 1 and 4 this evening when I'm back from the last > pool day of the season. I'll look more closely at 3 as well. Let me know if > you can resolve 2 with search path arguments or if I need to expose one of > those from the find file. > > --Greg > >> >> >> >> >> >> >> >> >> >> _______________________________________________ >> sword-devel mailing list: sword-devel@crosswire.org >> http://crosswire.org/mailman/listinfo/sword-devel >> Instructions to unsubscribe/change your settings at above page > >
_______________________________________________ sword-devel mailing list: sword-devel@crosswire.org http://crosswire.org/mailman/listinfo/sword-devel Instructions to unsubscribe/change your settings at above page