fix: also bundle libltdl.7.dylib for macOS app

libodbc.2.dylib depends on libltdl.7.dylib (libtool). Rewrite its
install_name and the reference in libodbc to @rpath so both resolve
from Contents/Frameworks/ at runtime.
This commit is contained in:
t8y2 2026-05-07 18:46:09 +08:00
parent fd444eb080
commit 484dc85114
2 changed files with 5 additions and 2 deletions

View File

@ -67,8 +67,11 @@ jobs:
if: startsWith(matrix.platform, 'macos')
run: |
ODBC_LIB="$(brew --prefix unixodbc)/lib/libodbc.2.dylib"
LTDL_LIB="$(brew --prefix libtool)/lib/libltdl.7.dylib"
install_name_tool -id "@rpath/libodbc.2.dylib" "$ODBC_LIB"
cp "$ODBC_LIB" src-tauri/
install_name_tool -id "@rpath/libltdl.7.dylib" "$LTDL_LIB"
install_name_tool -change "$LTDL_LIB" "@rpath/libltdl.7.dylib" "$ODBC_LIB"
cp "$ODBC_LIB" "$LTDL_LIB" src-tauri/
- name: Install Apple certificate (macOS)
if: startsWith(matrix.platform, 'macos')

View File

@ -30,7 +30,7 @@
"targets": "all",
"createUpdaterArtifacts": true,
"macOS": {
"frameworks": ["libodbc.2.dylib"]
"frameworks": ["libodbc.2.dylib", "libltdl.7.dylib"]
},
"icon": [
"icons/32x32.png",