Mobileread
Building Sigil on Haiku
#1  User_Z 09-05-2019, 04:28 AM
Hi everyone.
Need building manual Sigil on Haiku.
Or your help.

P.S. Лучше на русском.
Reply 

#2  DiapDealer 09-05-2019, 07:35 AM
If Haiku supports Qt5.9.x or higher, you should use the Linux build documentation and adjust accordingly. That's all assuming it's even possible if course. I've absolutely no experience with the OS in question, and the internet isn't very forthcoming about what's available in the way of packages for Haiku. All I know is that if you're running a 32-bit version that still uses a fork of gcc2, then you're very likely out of luck.
Reply 

#3  User_Z 09-27-2019, 09:42 AM
Hello.

Unfortunately, QtWebEngine does not currently work on the Haiku system. Therefore, I leave the idea of building Sigil in this operating system until better times.

There is no particular desire to mess with version 0.9.14. And the assembly according to the instructions for Linux, which is called "on the fly", did not bring results.
Who cares about the log files with errors:
[txt] cmake-log.txt (12.2 KB, 15 views)
[txt] make_log.txt (68.6 KB, 14 views)
Reply 

#4  KevinH 09-27-2019, 09:55 AM
Your libc seems to be missing the 64bit file functions.

The entire remainder of the log was just known warnings that do not matter.

Kevin

boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: ../lib/libminizip.a(ioapi.c.o): in function `fseek64_file_func':
ioapi.c:(.text+0x11e): undefined reference to `fseeko64'
/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: ../lib/libminizip.a(ioapi.c.o): in function `ftell64_file_func':
ioapi.c:(.text+0x14a): undefined reference to `ftello64'
/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-haiku/8.3.0/../../../../x86_64-unknown-haiku/bin/ld: ../lib/libminizip.a(ioapi.c.o): in function `fopen64_file_func':
ioapi.c:(.text+0x185): undefined reference to `fopen64'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/sigil] Error 1
make[1]: *** [src/CMakeFiles/sigil.dir/all] Error 2

Quote User_Z
Hello.

Unfortunately, QtWebEngine does not currently work on the Haiku system. Therefore, I leave the idea of building Sigil in this operating system until better times.

There is no particular desire to mess with version 0.9.14. And the assembly according to the instructions for Linux, which is called "on the fly", did not bring results.
Who cares about the log files with errors:
Reply 

#5  User_Z 09-27-2019, 10:27 AM
I have installed Haiku x86_64 hrev53511. Everything there is 64-bit, there is no other.
I think this is a minizip error.
Reply 

#6  DiapDealer 09-27-2019, 11:01 AM
You could try building with whatever 64-bit version of minizip that Haiku provides (and other 3rd-party libs included with Sigil). The CMAKE directives are explained in the Sigil build documentation:

Quote
-DUSE_SYSTEM_LIBS=(0|1) Tells cmake to try and use the system libraries when building Sigil instead of the ones bundled with Sigil in the 3rdParty directory. If a system version of a 3rd-party can't be found, Sigil falls back on the bundled version -- unless -DSYSTEM_LIBS_REQUIRED=1 is also specified (default is 0).

-DSYSTEM_LIBS_REQUIRED=(0|1) When used in conjunction with -DUSE_SYSTEM_LIBS=1, the Sigil build process will fail if all the necessary libraries can't be located on the system, instead of falling back on the bundled versions (default is 0).
Of course, it would be up to you to makes sure those 3rd-party libraries are available.

Or alternatively; if it is the system version of minizip that is failing, consider using the versions bundled with Sigil.

EDIT: from your provided cmake log, it looks like you're using mostly system libraries for Sigil's third-party dependencies--with the exception of zlib. You're using the version that comes with Sigil for that. Try installing the 64-bit zlib and zlib_devel packages that Haiku provides and adding -DSYSTEM_LIBS_REQUIRED=1 to the Sigil cmake configuration command so that the build fails if the system versions of all the third-party libraries can't be found.

I don't think I'd recommend using our bundled version of zlib with Haiku's system version of minizip (which is what is happening by the looks of your log).
Reply 

#7  User_Z 09-27-2019, 12:53 PM
DiapDealer

Are you planning to upgrade the libraries included in the 3rdparty?
They’re very, very old.

I understand that this will take a lot of time and require some changes. But still?
For example, Hunspell can only be updated to version 1.3.4. All of the above, without changing the code, no longer works. Or I'm wrong?
Reply 

#8  DiapDealer 09-27-2019, 01:10 PM
Quote User_Z
DiapDealer

Are you planning to upgrade the libraries included in the 3rdparty?
They’re very, very old.

I understand that this will take a lot of time and require some changes. But still?
For example, Hunspell can only be updated to version 1.3.4. All of the above, without changing the code, no longer works. Or I'm wrong?
Any version of hunspell 1.x.x should be able to work (unless they've broken the cardinal rule of no api-changes in minor version updates). Arch Linux, for instance builds Sigil with their system hunspell (which is at v1.7.0) without needing to patch Sigil's code.

But no, we've no plans to update the bundled libraries right now. Other things are taking priority. Especially with Linux's ability to already use their own updated system versions of the 3rd-party libraries.
Reply 

#9  KevinH 09-27-2019, 03:08 PM
My guess is just adding support for Haiku on line 17 of minizip/ioapi.c to make it do what Apple does here would be enough:

https://github.com/Sigil-Ebook/Sigil/blob/a16054f32d09a59bcb8cf6301c2ded3cf16d63b5/3rdparty/zlib/contrib/minizip/ioapi.c
Reply 

#10  DiapDealer 09-27-2019, 03:41 PM
It's possible. If so, I'd guess there's a few places where if_defined(HAIKU) would need to be introduced for a successful build.

I messed around with BeOS a long time ago (which is apparently what Haiku is based/modeled after), but not enough to know the ins and outs.
Reply 

  Next »  Last »  (1/7)
Today's Posts | Search this Thread | Login | Register