why is the deployment with no change failing now?
ERROR: failed to solve: process "/bin/bash -ol pipefail -c apt-get update && apt-get install -y --no-install-recommends ffmpeg imagemagick ghostscript gsfonts fonts-droid-fallback fonts-noto-mono fonts-urw-base35" did not complete successfully: exit code: 1
aptPkgs = [
"...",
"ffmpeg",
"imagemagick",
"ghostscript",
"gsfonts",
"fonts-droid-fallback",
"fonts-noto-mono",
"fonts-urw-base35"
]
This did not fail earlier..
issue on production, lf help.
72 Replies
Project ID:
ca440142-97f8-497c-8374-bdd45e8e3749
ca440142-97f8-497c-8374-bdd45e8e3749
please send your full build logs, use this https://bookmarklets.up.railway.app/log-downloader/
here you go
okay ill get to thinking
Thanks. Exact same code that is now working is also failing anything changed on Railway?
I mean the old active deployment
yes, new nixpacks version
Not that the deployments are successful
Ok, anything I should change in nixpacks toml?
dont know yet
Okay, thanks, looking forward to hearing back
ill need to tag in @jr here, glibc 2.35 is installed but version 2.36 is required
I think it is the opposite. Version 2.36 is missing
ah right. but 2.36 is required, not 3.36
oh my bad, typo
Can you please share your
nixpacks.toml
filei can reproduce this with this nixpacks.toml file
and a main.py file
the issue is with ffmpeg and zlib
I think
It is definitely ffmpeg causing issues
same thing with ffmpeg removed
Can you try adding
under
[phases.setup]
yes mb it is with stdenv.cc.cc.lib
adding zlib worked
whys that necessary now, but wasnt before?
you are actually removing
stdenv.cc.cc.lib
since the default nixLibs
for python is zlib and stdenv
I am not exactly sure what the full issue is now. Looks like the glibc versions are conflicting
Can look into a more permantent fix later this week, but for now the solution is to do this https://canary.discord.com/channels/713503345364697088/1153901081282224169/1153919199303975062This isn't all Python projects either. I was monitoring and most of them are going through. I think some combination of specific apt packages that conflcit with the stdenv glibc version
gotcha, will keep this in mind if i see this issue again
@Yash can you try the proposed solution with your project?
Please feel free to tag me in any related thread too
will do
i can see it didn't fail immediatley
checking if the whole deployment goes through
ImportError: libstdc++.so.6: cannot open shared object file: No such file or directory
one of the cv2 imports is now failing, which didn't fail earlier.
no issues in build
will adding "libstdc++6"
in apt help?
try it, cant hurt
trying
it says it's already installed, but waiting for the whole deployment
the product is now crashing because of this 🥲
doesnt railway keep an active build live if your service crashed in the first 20 seconds?
the build went through, it failed on deploy
so the old active build is now failing
i see
sharing logs here
share your requirements.txt?
you have uvicorn twice and nothing is pinned to a specific version, but that wouldnt cause a "cannot open shared object file" error
you are using the headless version of opencv though so that was what i was wanting to look at
@jr any ideas?
i'm going to be fixing versions later on, let me clean it up
looking into this, will this help?
Stack Overflow
libstdc++.so.6: cannot open shared object file: No such file or dir...
I want to run Cilkscreen command with a cilk++ program but I'v got this error
/usr/local/cilk/bin/../lib32/pinbin: error while loading shared
libraries: libstdc++.so.6: cannot open shared obj...
try it?
I'm not sure atm unfortunately. Will have to check tomorrow. You can also revert to an older nixpacks version to unstick yourself in the meantime if you would like (https://docs.railway.app/deploy/config-as-code#nixpacks-version)
Actually adding
build-essential
as an aptPkg
might worktrying it
ah yeah i totally forgot you can specify a nixpacks version
what was the last version of nixpacks?
just look back on the last build where everything worked and use that version
I wouldn't recommend as a long term solution since you won't get any updates (system/os/security). But in cases like this is can help
just as long as i get the solution
let us know how adding
build-essential
worksyes, waiting
didn't work
is this correct way to pass the build?
sorry this:
put
above
[phases.setup]
f yeah the
stdenv.cc.cc.lib
package is what provided the libstdc++.so header
This has to go in a railway.toml
file 🙈has to be a railway.toml?
Yes
so created another file for this and deployed
removed nixlibs
Just for the nixpacksVersion. Railway looks at that to determine what Nixpacks version to use. And then Nixpacks looks at nixpacks.toml for the build config (yes a mess we know)
Can revert the nixpacks.toml file to what it was before and jus tset the version
yes, doing that
"nixpacksVersion" is in the json schema for railway.json too, if thats more your thing
this?
it worked just find without a json
ok it worked with v15
the old version
thats not valid toml
https://docs.railway.app/deploy/config-as-code#nixpacks-version
yes sent like this it went through
since its working with the old version, is this something railway team will investigate?
https://discord.com/channels/713503345364697088/1153901081282224169/1153920151754915841
Can look into a more permantent fix later this week
cool, thanks man!
appreciate your help.
jr did all the work
appreciate all the work that was done here
Glad it is working now!
I'm having a similar issue:
nixpacks.toml:
[phases.setup]
nixPkgs = ['...', 'libreoffice']
aptPkgs = ['...', 'gcc', 'g++','libstdc++6','fontconfig']
Trying this fix
Looks like this fix worked