Closed Kreijstal closed 1 week ago
Do you obtain this when compiling rnote (with the patch ? + the correct msys install) ?
If not, maybe it's because of this ?
# Enabling feature > v20_9 causes linker errors on mingw
poppler-rs = { version = "0.24.1", features = ["v20_9"] }
https://github.com/flxzt/rnote/blob/7f3ff8aafcaf3137bec9993329667e5e9fbf4c4e/Cargo.toml#L86-L87
I'm trying to look for the symbols manually
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/bin/libpoppler-cpp-1.dll |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/bin/libpoppler-glib-8.dll |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/bin/libpoppler-141.dll |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/lib/libpoppler.dll.a |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/lib/libpoppler-cpp.dll.a |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# objdump -afprtd /ucrt64/lib/libpoppler-glib.dll.a |grep "poppler_certificate_info_new"
topkek@windows UCRT64 ~/git/tdf
# cd /ucrt64/include/poppler/
topkek@windows UCRT64 /ucrt64/include/poppler
# grep -r "poppler_certificate_info_new" .
./glib/poppler-form-field.h:PopplerCertificateInfo *poppler_certificate_info_new(void);
topkek@windows UCRT64 /ucrt64/include/poppler
Obviously can't find them even though they're on the glib header..
And we can see they're here
https://gitlab.freedesktop.org/poppler/poppler/-/blob/26e52dc0dbf00e3b6b0bccb809736f7a3e4d29f5/glib/poppler-form-field.h#L345
yet it doesn't have a POPPLER_PUBLIC
declaration..
Searching for information I see that linux .so don't have these files either..
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler-glib.so |grep "poppler_certificate_info_new"
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler-cpp.so |grep "poppler_certificate_info_new"
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler.so |grep "poppler_certificate_info_new"
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler-qt5.so |grep "poppler_certificate_info_new"
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler-qt6.so |grep "poppler_certificate_info_new"
kreijstal@archlinux:~$ objdump -afprtd /usr/lib/libpoppler.so |grep "poppler_certificate_info_new"
But we can see that in the .rs file they're indeed exposed?
https://gitlab.gnome.org/World/Rust/poppler-rs/-/blob/16e439de8c539fdb3073c95a4cce0683bceab833/sys/src/lib.rs
Or they try to link to them, so it makes me a bit confusing where they are defined..
You're using MSYS2 UCRT64 and MSYS2 MINGW32 ?
I've only used tested and used mingw 64. So installed poppler with
pacman -Syu mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data
inside of MSYS2 MINGW64 and compiled inside the same MSYS MINGW64 terminal
You're using MSYS2 UCRT64 and MSYS2 MINGW32 ?
I've only used tested and used mingw 64. So installed poppler with
pacman -Syu mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data
inside of MSYS2 MINGW64 and compiled inside the same MSYS MINGW64 terminal
They're deprecating mingw64, they refuse to package for mingw64 anymore, see for example wezterm.
You're using MSYS2 UCRT64 and MSYS2 MINGW32 ? I've only used tested and used mingw 64. So installed poppler with
pacman -Syu mingw-w64-x86_64-poppler mingw-w64-x86_64-poppler-data
inside of MSYS2 MINGW64 and compiled inside the same MSYS MINGW64 terminal
They're deprecating mingw64, they refuse to package for mingw64 anymore, see for example wezterm.
I'll test with mingw64
Same error with mingw64
You're compiling https://github.com/Kreijstal/tdf, right ?
Can reproduce by changing poppler-rs
with my own branch.
The error disappears when changing features = ["v23_7"]
with features = ["v20_9"]
So it's the
# Enabling feature > v20_9 causes linker errors on mingw
bug
i have the poppler package tho