Recent

Author Topic: Cannot compile CudaText for FreeBSD x64 with libQt5Pas  (Read 2581 times)

AlexTP

  • Hero Member
  • *****
  • Posts: 2457
    • UVviewsoft
Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« on: May 04, 2023, 06:20:10 am »
I got the libQt5Pas file from
https://github.com/Alexey-T/CudaText/issues/5040#issuecomment-1533917966
and copied it to
fpcupdeluxe/fpcupdeluxe32/cross/lib/x86_64-freebsd/libQt5Pas.so

On compiling, I got many messages like this:
Quote
Error: /home/user/fpcupdeluxe/fpcupdeluxe32/cross/bin/x86_64-freebsd/x86_64-freebsd12-ld.bfd: /home/user/fpcupdeluxe/fpcupdeluxe32/cross/lib/x86_64-freebsd//libQt5Pas.so: undefined reference to `QItemSelectionModel::columnIntersectsSelection(int, QModelIndex const&) const@Qt_5'

And 'linking error' at end.

Thaddy

  • Hero Member
  • *****
  • Posts: 15555
  • Censorship about opinions does not belong here.
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #1 on: May 04, 2023, 11:15:31 am »
If you remove the .1 (specific versioning, bad idea) it compiles if FreeBSD is up to date. I just tested that.

(btw thx for the nice projects you do)
If I smell bad code it usually is bad code and that includes my own code.

AlexTP

  • Hero Member
  • *****
  • Posts: 2457
    • UVviewsoft
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #2 on: May 04, 2023, 11:25:04 am »
I already removed the .1 (because if not, linker cannot find the file, now it finds the .so file, but we have many compile errors, like I shown).

I use fpcupdeluxe, cross-compiling to FreeBSD on Linux Ubuntu 20.4.

AlexTP

  • Hero Member
  • *****
  • Posts: 2457
    • UVviewsoft
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #3 on: May 04, 2023, 11:28:05 am »
And I use
Free Pascal Compiler version 3.2.3-660-g9b2ba834a6 [2022/08/18] for x86_64

dbannon

  • Hero Member
  • *****
  • Posts: 3026
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #4 on: May 04, 2023, 01:07:50 pm »
If you remove the .1 (specific versioning, bad idea) it compiles if FreeBSD is up to date. I just tested that.

it would be more normal to put the original file, libQt5Pas.so.1.2.12, in the appropriate lib directory and then make symlinks called libQt5Pas.so.1.2, libQt5Pas.so.1 and libQt5Pas.so to it.

I am unsure which one Zeljko's code tries to open. But it could be any of them except, probably, "libQt5Pas.so.1.2.12".

Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

AlexTP

  • Hero Member
  • *****
  • Posts: 2457
    • UVviewsoft
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #5 on: May 04, 2023, 01:15:27 pm »
Quote
it would be more normal to put the original file, libQt5Pas.so.1.2.12, in the appropriate lib directory and then make symlinks called libQt5Pas.so.1.2, libQt5Pas.so.1 and libQt5Pas.so to it.
I did it now, it did not help.
Maybe Qt5 .so files are needed as well, and linker needs them?

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11732
  • FPC developer.
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #6 on: May 04, 2023, 02:48:03 pm »
I haven't tested it for a long time, but IIRC FreeBSD is less flexible with libraries placed outside system directories.

Try to see with increased LD verbosity if it is actually found.

Maybe a LLVM compiled vs GCC compiled qt5pas ? Do the symbols appear with nm ?

AlexTP

  • Hero Member
  • *****
  • Posts: 2457
    • UVviewsoft
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #7 on: May 04, 2023, 02:56:16 pm »
Quote
Try to see with increased LD verbosity
How to do it?

Quote
Maybe a LLVM compiled vs GCC compiled qt5pas ?
I cannot change the .so file, I used the one uploaded for me.

Quote
Do the symbols appear with nm ?
user@PC:~/fpcupdeluxe/fpcupdeluxe32/cross/lib/x86_64-freebsd$ nm libQt5Pas.so
nm: libQt5Pas.so: no symbols

Thaddy

  • Hero Member
  • *****
  • Posts: 15555
  • Censorship about opinions does not belong here.
Re: Cannot compile CudaText for FreeBSD x64 with libQt5Pas
« Reply #8 on: May 04, 2023, 05:10:56 pm »
FreeBSD is allergic to ANY SPECIFIC versioning and expects the libraries in the proper place.
That is both its strength and its weakness to programmers.
If I smell bad code it usually is bad code and that includes my own code.

 

TinyPortal © 2005-2018