TGViewer
Сіпласпластик Сіпласпластик @cpplastic · 740 subscribers
Post #77 117
Ви мабуть ніфіга не зрозумієте, але я все ж пожаліюся.

Отже я наробив якоїсь хуйні 😇 Все почалося з того, що локально зібраний реліз під мак в мене працював норм, а зібраний на CI не запускався. Я дізнався, що це через те, що в бінарь з CI чогось зашиваються локальні шляхи до ліб на кшталт:

❯ otool -L /Applications/MyMegaApp.app/Contents/MacOS/MyMegaApp
/Applications/MyMegaApp.app/Contents/MacOS/MyMegaApp:
/usr/local/opt/qt/lib/QtQuick.framework/Versions/A/QtQuick (compatibility version 6.0.0, current version 6.4.0)
/usr/local/opt/qt/lib/QtOpenGL.framework/Versions/A/QtOpenGL (compatibility version 6.0.0, current version 6.4.0)
/usr/local/opt/qt/lib/QtGui.framework/Versions/A/QtGui (compatibility version 6.0.0, current version 6.4.0)

тоді як в мене локально все правильно (і на CI теж було):

❯ otool -L MyMegaApp.app/Contents/MacOS/MyMegaApp
MyMegaApp.app/Contents/MacOS/MyMegaApp:
@rpath/QtQuick.framework/Versions/A/QtQuick (compatibility version 6.0.0, current version 6.4.0)
@rpath/QtOpenGL.framework/Versions/A/QtOpenGL (compatibility version 6.0.0, current version 6.4.0)
@rpath/QtGui.framework/Versions/A/QtGui (compatibility version 6.0.0, current version 6.4.0)

Тож я пішов на CI-сервер чєкнути, що відбувається. Ідей в мене було не багато, але я подумав, що може якась проблема з різними версіями Qbs (в мене 1.24.0, а на CI — 1.23.0 чи щось таке).

Тож я, не довго думаючи, набрав brew upgrade qbs. Це було великою помилкою. Воно авжеж оновило Qbs, але з ним воно оновило і його депенденсі — Qt (це проблема №1). Qt депендив на OpenSSL ніби, а той ще на щось, все це якось призвело до оновлення пайтону, котрий став 3.11, і врешті якогось хєра справа дійшла до Conan, який, тварюка така, як раз оновився до 2.0, хоча у нас був 1.57.

З новою версією Conan перестав працювати #Qbs (ConanProbe не може зробити configure), тому я вирішив знести Conan через brew та встановити через pip, бо brew не дозволяє обирати версію ніби. Виявилось, що той pip, що в системі, не вписаний в $PATH, тому я вирішив поставити pyenv, через нього встановити потрібну версію пітону з піпом глобально, а потім вже туди встановити конан.

Результат передбачуваний:
ВСЕ ЦЕ НІХУЯ НЕ ПРАЦЮЄ! ахахаха
Тому що я не знаю, як рестартнути ранер, аби він підхватив нові змінні середовища. Я вже і в .profile, і в .bashrc все попрописував. Наш девопс ніби щось там налагодив врешті, але це пиздець.

Мораль авжеж така, що не варто щось прям на серваку фіксити вручну, особливо надвечір. Тим паче, якщо це віртуалка в QEMU всередині докеру.
Але думаю, що час вчити Nix, бо Homebrew — це шматок лайна, котрий тільки для домашнього використання підходить.
  • 👏 1
  • 👀 1
More from @cpplastic
  1. Oct 9, 2026Зацініть рівень української служби підтримки. Жодних пояснень, заяв, перепитувань: «Не тре…
  2. Oct 7, 2026Post #543
  3. Oct 2, 2026Щось не злетіло з self-driving cars у автовиробників, еге ж? А стільки галасу було. Ну зат…
  4. Sep 24, 2026Ух, яку ж класну доповідь подивився: «Scott Jenson: Are we really going to use the same De…
  5. Sep 23, 2026Post #540
  6. Sep 21, 2026«Порекламую» вам український сайт, який мені дуже подобається. Взяв слово в лапки, бо як і…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →