[sword-devel] SWORD 1.9.0RC3 Available - Windows

Gary Holmlund gary.holmlund at gmail.com
Mon Oct 12 19:52:26 EDT 2020


On 10/11/2020 2:35 PM, Greg Hellings wrote:
> 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.
>
#2, not #3

I got the FindClucene.cmake part working. Now I am faced with numerous 
warning and a number of errors. See the attached file. At this point I 
would be happy with a cmake switch that would bypass the 
"FIND_PACKAGE(CLucene QUIET)"

Gary


> 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.hellings at gmail.com 
> <mailto:greg.hellings at gmail.com>> wrote:
>
>
>
>     On Sun, Oct 11, 2020, 11:21 Gary Holmlund <gary.holmlund at gmail.com
>     <mailto:gary.holmlund at 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 at 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 at sword@@$$Z$$V@?$pair@$$CBVSWBuf at sword@@V?$multimapwithdefault at VSWBuf@sword@@V12 at U?$less at VSWBuf@sword@@@std@@@2@@std@@QAE at Upiecewise_construct_t@1 at V?$tuple@$$QAVSWBuf at sword@@@1 at V?$tuple@$$V at 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 at crosswire.org
>         <mailto:sword-devel at crosswire.org>
>         http://crosswire.org/mailman/listinfo/sword-devel
>         Instructions to unsubscribe/change your settings at above page
>
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-devel/attachments/20201012/29f07c23/attachment-0001.html>
-------------- next part --------------

6>  swmodule.cpp
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\sword\include\swkey.h(79): message : see declaration of 'sword::SWKey::LocaleCache' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\sword\include\swconfig.h(35): message : see declaration of 'sword::multimapwithdefault<sword::SWBuf,sword::SWBuf,std::less<sword::SWBuf>>' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\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-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\sword\include\swmodule.h(107): message : see declaration of 'sword::SWModule::StdOutDisplay' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\sword\include\treekeyidx.h(54,15): warning C4251: 'sword::TreeKeyIdx::currentNode': class 'sword::TreeKeyIdx::TreeNode' needs to have dll-interface to be used by clients of class 'sword::TreeKeyIdx' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\sword\include\treekeyidx.h(42): message : see declaration of 'sword::TreeKeyIdx::TreeNode' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(68,7): error C2143: syntax error: missing ';' before '*' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(68,7): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(68,15): error C2238: unexpected token(s) preceding ';' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(76,54): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(76,35): error C2143: syntax error: missing ',' before '*' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(79,8): error C2143: syntax error: missing ';' before '*' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(79,8): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]
6>C:\bibletime-tmp2\b1\install\include\CLucene/debug/error.h(79,17): error C2238: unexpected token(s) preceding ';' [C:\bibletime-tmp2\b1\sword-prefix\src\sword-build\sword.vcxproj]


More information about the sword-devel mailing list