-
-
Notifications
You must be signed in to change notification settings - Fork 282
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error while trying to install it with armhf arch #113
Comments
Looks like there is no pre-compiled binary files for ARM...which is strange considering this is for Alpine...Anyway, I will stick with Debian Slim for the moment. Thanks anyway. |
Now I am using the docker on the Raspberry Pi to compile glibc's aarch64 binary package. Later in the day I will try to build an alpine apk package using this binary package. |
and armhf? :) |
Yes, I will spend some time building glibc for arm64 and armhf |
Thanks! That would be awesome. If/whenever you reach to something testeable, share with me the instructions and I can give it a try. |
Same problem and error here. Using a Dockerfile that detects the architecture ( @gorquan @sgerrand |
Hi @SaturnusDJ |
@marianopeck |
Hi @SaturnusDJ |
@marianopeck |
Wow, that would be lovely :) I will re-open the case just to see if we can gain more interest. |
Yes, I don't know what @sgerrand did, but it sure was something good. I am going to have a look at https://github.com/sgerrand/docker-glibc-builder. Maybe building that on ARM results in a glibc for ARM. |
If that's the case, I can try to help. I do have ARM and ARM64 devices and Docker already installed on them.. Let me know. |
I am trying on ARMv7l (RPi 3B+)
|
Not that I can't help much but I have also a ARMv7l (RPi 3B+) for building/testing as well as other SD with Ubuntu 18.04 compiled for aarch64 that also runs on the same Rpi 3B+ So I have both flavors. |
I ran it on x86_64 and that results in a 50MB glibc-bin.tar.gz. Cloned the repo on the RPi 3B+, it's running now but the outcome will either be the same (50MB) or it will fail or it will produce a faulty result. I don't know how @sgerrand managed to generate such small results as on the https://github.com/sgerrand/alpine-pkg-glibc/releases page. Maybe he is selectively packing the resulting files instead of packing all of them. |
@marianopeck Anyways...if you dare to try:
Or leave out the
Then likely you will find a glibc-bin-2.28.tar.gz somewhere. Inside it is usr/glibc-compat/ |
Hi @SaturnusDJ
I guess you replaced that by mounting from your host (Pi too)? Could you share that?
Could you share that as well? I would like to do the same thing. Thanks! |
BTW, the last statement did nothing :(
|
Oh yes I forgot to describe the final step. Just make a volume to share the files with a container. Then copy the generated files into the container root. Thus, move the prepared usr/glibc-compat/ that is on a volume into /. It's pretty general. You could share the end result .tar.gz, extract it, remove all but bin and sbin and the copy it to /. But when all in error free it would make sense to generate a single .tar.gz that is fully prepared and only needs to be extracted onto /. But first let get it error free. Why did it not work for you? Or maybe it did work, after the last command you should have a container running, it will be generating the file and could take an hour. Try without |
Hi @SaturnusDJ
Weird... |
I did a
But the build finishes correct...so I don't know. |
That's weird. No hidden errors in the build log or git log? I saw errors here but not severe ones for me. |
OK, I think the problem is on my end. If I got to my browser and paste "https://ftpmirror.gnu.org/libc/glibc-2.28.tar.gz" it redirects me to "https://espejito.fder.edu.uy/gnu/libc/glibc-2.28.tar.gz" which throws me a nice:
Yeah...I am in Argentina, next to Uruguay. I will change the URL to see if I can use it with another mirror... |
OK...working now... I changed the url to "https://ftp.gnu.org/gnu/glibc/glibc-$version.tar.gz" and now it's compiling :) |
Good find. 👍 Tomorrow I will have a closer look at https://github.com/sgerrand/docker-glibc-builder/. For example https://github.com/sgerrand/docker-glibc-builder/blob/master/builder where it says |
Yes. I will also check once it finishes compiling what is the result and how to use it from my app... I guess I will need to |
For what is |
Btw my container ends with
So we might have to fix that. |
I also see that warning. |
Hmm it just finished.. but it's still huge... See pic. I do need |
In my case I only needed bin and sbin to run my application. Total = 11MB. Try if that works for you too. AMD 64 Alpine + glibc = ~15MB. I cannot yet think of a way to apply the fix at sgerrand/docker-glibc-builder#9. We have to intercept somewhere then. sgerrand/docker-glibc-builder#20 could help us too. |
Sorry I read wrong. You need lib. Maybe look if there is something big that can be removed without consequences. Compare to the releases in this repo what has not been put in them. Then mimic that. |
Hi @SaturnusDJ |
BTW, the one I said I tried long ago and that worked out of the box was this from @yangxuan8282. The sizes are better but it's a very old glibc version and I cannot find documentation on how he does it.
|
Oh, I am very sorry. I have put the project on hold for a while because I am looking for a job.I have already created a docker that can compile glibc. It works on the arm64 platform and is compiled on my Raspberry Pi 3B. At the same time, I also tried to package the apk of glibc, but there was an error during the packaging process.So I dare not release it. I think you can try my docker, maybe I can help you. |
Hi @gorquan |
Please wait.I uploaded my apk packaging container to github, you can try it. |
Hi@marianopeck |
@marianopeck The error just before the container finishes, can indeed be fixed at suggested in the topic.
My |
...I just tested my application with user config in a 'real' environment and actually, while the logs are okish, the output is not. Simply said: it is not working, even with the full compiled 40MB .tar.gz. |
Hi @SaturnusDJ @gorquan |
In my case I found that a newer version of the application I am trying to run, even runs without glibc. Maybe only libc6 and libstdc++6 are required, and....bash! Installing bash fixed an error for me. This is on ARM. Tested it successfully. x86_64 likely will continue to have errors etc. |
@marianopeck I gave it another try and found: https://github.com/armhf-docker-library/alpine-pkg-glibc/releases
Test image: 16,4MB here. The version, 2.22, is outdated though. I really cannot understand why there is no active development in this. Not sure how that Drone stuff works in the repo linked. Hope to check it out later and hopefully dev into a more recent version of glibc. |
Are you sure that's real GNU libc and not musl?
…On Wed, Sep 11, 2019, 16:29 SaturnusDJ ***@***.***> wrote:
@marianopeck <https://github.com/marianopeck>
This issue became such a giant mess that I am not sure anymore what we
tried and how everything works. As said above, I also did not need it
anymore because all of a sudden the application started working with bash
installed. But a few days ago I again needed glibc stuff to work in
Docker......
I gave it another try and found:
https://github.com/armhf-docker-library/alpine-pkg-glibc/releases
It did what nothing else did before. Two applications that did not want to
run at all....are running now. No idea yet about the performance,
limitations, etc., but give them a try if you have not yet.
FROM alpine:3.10
RUN wget https://github.com/armhf-docker-library/alpine-pkg-glibc/releases/download/2.22/glibc-2.22-r8.apk https://github.com/armhf-docker-library/alpine-pkg-glibc/releases/download/2.22/glibc-bin-2.22-r8.apk https://github.com/armhf-docker-library/alpine-pkg-glibc/releases/download/2.22/glibc-i18n-2.22-r8.apk && \
apk add --no-cache --allow-untrusted glibc-2.22-r8.apk glibc-bin-2.22-r8.apk glibc-i18n-2.22-r8.apk && \
rm -rf glibc*
ENTRYPOINT ["tail", "-f", "/dev/null"]
Test image: 16,4MB here.
The version, 2.22, is outdated though. I really cannot understand why
there is no active development in this. Not sure how that Drone stuff works
in the repo linked. Hope to check it out later and hopefully dev into a
more recent version of glibc.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#113?email_source=notifications&email_token=AAH4FAVHNAGQGD5SSEJIRLLQJFBIHA5CNFSM4G36NEFKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6PT7WA#issuecomment-530530264>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAH4FARMH5ORHIQT4WXCXGTQJFBIHANCNFSM4G36NEFA>
.
|
Hmm not sure. How to find out? "pkgdesc = GNU C Library compatibility layer" |
@marianopeck |
I build for arm64 version for my own usage: https://github.com/Rjerk/alpine-pkg-glibc/releases/tag/2.30-r0-arm64 |
For |
Hi,
I am installing the latest version on a Raspberry Pi 3B+ this way:
and I am getting this error:
Any idea of what might be wrong? Maybe this is the same case as issue #54 or #81
Thanks
The text was updated successfully, but these errors were encountered: