mirror of
https://github.com/delibae/claude-prism.git
synced 2026-08-28 05:14:59 +00:00
fix: add U_DISABLE_RENAMING for ICU compat + ICU symbol diagnostic
vcpkg ICU may be built with --disable-renaming, exporting plain symbols (ucnv_fromUChars) while tectonic C++ code references versioned symbols (ucnv_fromUChars_78). Pass -DU_DISABLE_RENAMING=1 to match. Also add nm diagnostic to verify. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4f50c1a4b2
commit
6e34b8660f
1 changed files with 9 additions and 4 deletions
13
.github/workflows/build-desktop.yml
vendored
13
.github/workflows/build-desktop.yml
vendored
|
|
@ -506,19 +506,24 @@ jobs:
|
|||
ZOTERO_CONSUMER_KEY: ${{ secrets.ZOTERO_CONSUMER_KEY }}
|
||||
ZOTERO_CONSUMER_SECRET: ${{ secrets.ZOTERO_CONSUMER_SECRET }}
|
||||
TECTONIC_DEP_BACKEND: vcpkg
|
||||
CXXFLAGS: "-std=c++17"
|
||||
CFLAGS: ""
|
||||
CXXFLAGS: "-std=c++17 -DU_DISABLE_RENAMING=1"
|
||||
CFLAGS: "-DU_DISABLE_RENAMING=1"
|
||||
# mold handles both graphite2 hidden symbols and Rust version scripts.
|
||||
# Prepend vcpkg lib path so ICU/harfbuzz from vcpkg are found before
|
||||
# system versions (prevents ICU version suffix mismatch).
|
||||
RUSTFLAGS: "-C link-arg=-fuse-ld=mold -C link-arg=-L${{ env.VCPKG_ROOT }}/installed/x64-linux/lib"
|
||||
run: |
|
||||
# Diagnose: check if vcpkg ICU has versioned or unversioned symbols
|
||||
echo "=== vcpkg ICU symbols ==="
|
||||
nm -D $HOME/vcpkg/installed/x64-linux/lib/libicuuc.so 2>/dev/null | grep "ucnv_fromUChars" | head -3 || echo "NOT FOUND"
|
||||
echo "=== vcpkg ICU renaming config ==="
|
||||
grep -E "U_DISABLE_RENAMING|U_ICU_VERSION_SUFFIX" $HOME/vcpkg/installed/x64-linux/include/unicode/uvernum.h $HOME/vcpkg/installed/x64-linux/include/unicode/uconfig.h 2>/dev/null | head -5 || echo "NOT FOUND"
|
||||
|
||||
# Move system ICU .so out of the way so linker finds vcpkg's ICU first.
|
||||
# System ICU (v70/74) has different version suffix than vcpkg ICU (v78).
|
||||
sudo mkdir -p /usr/lib/x86_64-linux-gnu/icu-system-backup
|
||||
sudo mv /usr/lib/x86_64-linux-gnu/libicu*.so* /usr/lib/x86_64-linux-gnu/icu-system-backup/ 2>/dev/null || true
|
||||
pnpm --filter @claude-prism/desktop tauri build --target x86_64-unknown-linux-gnu
|
||||
# Restore system ICU (needed for other tools)
|
||||
# Restore system ICU
|
||||
sudo mv /usr/lib/x86_64-linux-gnu/icu-system-backup/libicu*.so* /usr/lib/x86_64-linux-gnu/ 2>/dev/null || true
|
||||
|
||||
- name: Collect updater artifacts
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue