Hi all,

In an attempt to improve the Sword build process for Win32 I’ve automated this 
now, using the GitHub actions functionality.
https://github.com/tobias-klein/sword-build-win32

This repository links to the SWORD dependencies (CURL, ICU, etc.) in the form 
of Git submodules. It also links SWORD (using the Git mirror from BibleTime) as 
a submodule.

I’ve set up automatic build scripts, which means whenever one of the versions 
(of either Sword or any of its dependencies) in the scripts has been changed 
and pushed back to GitHub a new build will be automatically created. When a 
release is published, the corresponding release binaries (dlls) are 
automatically generated and the current SWORD headers are also included in the 
release zip file. The zip file (containing the libraries and headers) is then 
automatically attached to the release page on GitHub. The compiler used to 
build the dependencies and SWORD itself is Visual Studio 2019.

An example is the current „development release“ 1.8.900-2020-02-16.
https://github.com/tobias-klein/sword-build-win32/releases/tag/v1.8.900-2020-02-16

I’m using these auto-generated binaries now for the Windows build of 
node-sword-interface, the SWORD backend of Ezra Project (before I was using 
manually generated Windows binaries that I created a year ago).

There is one odd thing that I had to do when linking against the sword.dll. I 
had to include the following snippet in node-sword-interface:
char * sword::SWBuf::nullStr = (char *)"";
For some reason this symbol is stripped out of sword.dll and unless I add it in 
the software that links against sword.dll I get a linker error …
I already needed to handle this issue when building Sword for Windows manually 
one year ago.

Best regards,
Tobias

PS:
@Troy
For some reason I couldn’t observe the recently described crash anymore in this 
most recent build.
_______________________________________________
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

Reply via email to