wine64's complaint : 0024:err:winediag:load_odbc failed to open library "libodbc.so": Shared object "libodbc.so" not found, required by "wine64.bin"
How did you obtain or create the wine package you are using? Is it possible you built on a system where some ODBC port/package was present and then installed on a system where that is not the case? (If not, is there anything special in your setup? This is the first time I hear about this, so other users do not appear to be affected.) For Wine 9.9 and later, so what emulators/wine-devel is tracking, an explicit configure option has been added which I plan on using there, like many of the other --without-foobar configure options. For Wine 9.0, so emulators/wine, there is no such option yet.
(In reply to Gerald Pfeifer from comment #1) I've just installed from package repository. I didn't installed odbc until the error message appears. Thank you for your attention. Have a nice day.
Hm, you did not advise on my original question: If not, is there anything special in your setup? This is the first time I hear about this, so other users do not appear to be affected. And how does the problem manifest for you? I looked at the code in Wine 9.0, and libodbc.so is loaded dynamically, not by the loader upon startup, but Wine itself with error handling. Is it just the message, or more, that you ran into? I'll shortly commit a change to explicitly build --without-odbc to the wine-devel port, something Wine 9.0 does not offer yet, and will then close this report. (Also updating the bug summary to actually refer to the reported issue.)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=30b748b441647600bf05c8d34e9e420909cbd922 commit 30b748b441647600bf05c8d34e9e420909cbd922 Author: Gerald Pfeifer <gerald@FreeBSD.org> AuthorDate: 2024-06-29 14:40:37 +0000 Commit: Gerald Pfeifer <gerald@FreeBSD.org> CommitDate: 2024-06-29 14:43:29 +0000 emulators/wine-devel: Configure --without-odbc This is new functionality since upstream commit af3a8fa27b from May 10. We want to be explicit (either way) for the sake of builds being reproducible and predictable. PR: 279205 emulators/wine-devel/Makefile | 2 ++ 1 file changed, 2 insertions(+)
(In reply to Gerald Pfeifer from comment #3) What I can say, it was just this message, I faced out (nothing more affected me) that disappeared after installing odbc.
(In reply to Didier Garcin from comment #5) > What I can say, it was just this message, I faced out (nothing > more affected me) that disappeared after installing odbc. Got it. What happens is that Wine 9.0 (and versions until the upstream commit af3a8fa27b from May 10) checks whether libodbc.so is present at run time: If it is, it uses it where appropriate. If it is not, it issues the message you have been seeing. When emulators/wine is updated to Wine 10.0 (probably in early 2025) this will change along the lines of where emulators/wine-devel is now: an explicit configuration option.
(In reply to Gerald Pfeifer from comment #6) Maybe, it is without consequence but as it was reported as an error, I thought it was useful to signal it. Now, thanks to you, we have the last word of the story.