Запуск Swift на Heroku: ошибка при загрузке общих библиотек

Я пытаюсь развернуть приложение Swift в Heroku. Я использую Swift 5.0.2 и Heroku Stack 18. Это приложение ранее работало со Swift 3.0 и Heroku Stack 16.

Я не уверен, что эта ошибка говорит мне, поэтому я не совсем знаю, с чего начать, чтобы исправить это. Я использую форк пакета сборки Heroku, так как он даже не поддерживает их собственный стек 18. https://github.com/onuniverse/heroku-buildpack-swift

2019-07-19T00:25:55.906961+00:00 heroku[web.1]: State changed from crashed to starting
2019-07-19T00:25:57.109052+00:00 heroku[web.1]: Starting process with command `Unibot --bind 0.0.0.0:58139`
2019-07-19T00:25:58.829639+00:00 heroku[web.1]: State changed from starting to crashed
2019-07-19T00:25:58.761232+00:00 app[web.1]: Unibot: error while loading shared libraries: libicui18nswift.so.61: cannot open shared object file: No such file or directory

person Ryan Poolos    schedule 19.07.2019    source источник


Ответы (1)


Unibot: error while loading shared libraries: libicui18nswift.so.61:
cannot open shared object file: No such file or directory

Последняя строка журнала предполагает, что используемый вами пакет сборки неправильно копирует все общие библиотеки из цепочки инструментов Swift, либо потому, что он ищет предопределенные имена библиотек, либо не принимает во внимание символические ссылки, которые были введены в Swift 5.0.


Я бы порекомендовал повторить попытку с пакетом сборки vapor/vapor (доступен в виде источника здесь), который поддерживает Swift 5.0.2 и стек heroku-18 из коробки.

Несмотря на свое название, он не содержит ничего специфичного для Vapor и работает с любым проектом Swift.

person vzsg    schedule 19.07.2019
comment
Несмотря на свое название, он не содержит ничего специфичного для Vapor и работает с любым проектом Swift. Это просто спасло меня после нескольких часов попыток и неудач со старыми пакетами сборки для Kitura на героку. Спасибо! - person James Matthew Mudgett; 17.01.2020