-
Notifications
You must be signed in to change notification settings - Fork 101
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
AWS CRT binary not present in any of the following locations #119
Comments
Ok, found MY issue, hope it can help you too. I had the failure in jest unit tests, and it happened because I had explicitly overrided
Try to debug |
Make sure to sure to take the following into account when installing from npm (found in samples readme) If you are installing via npm instead of building from source, please make the following change to the package.json under each sample.
If this or the fix that @yitzchak-ben-ezra-ecoplant suggested don't work please reply with more info. What version on nodejs? You said after installation you are getting that error, what exactly are you trying to do? If trying to run the pubsub please include the command you are using with all parameters. |
@jmklix The code I'm trying to use is at https://github.com/markusl/ruuvitag-aws-iot-monitoring/blob/master/app-v2/package.json When starting the app with
Do you need any more details about this? |
I've replicated this on a raspberry pi 4 when using nodejs v15. By switching to nodejs v14 I was able to successfully install and run this. If this does not fix your issues please let us know. |
@jmklix The problem for me exists on Raspberry Pi Zero W with NodeJs 14.15.2 armv6l version. Could you explain why this is happening? |
I have the same problem as @markusl |
How where you able to install Nodejs v14.15.2 armv6l on the raspberry pi zero w? I'm using node v10.21.0 on a raspberry pi and it runs into a missing file different from what you are getting.
|
The install script documented in numerous online sources is also attached to my repository: https://github.com/markusl/ruuvitag-aws-iot-monitoring/blob/master/app-v2/node-install.sh NodeJs historically also supported armv6l officially. The current "unofficial" builds are from the same sources but there are no guarantees that the full NodeJs test suite passes. It would still be much better to use the LTS version than 10.x. Hope this answers your question @jmklix :) |
Thanks for that script. I was able to successfully build and run the pubsub sample on a raspberry pie zero w. These are the steps I followed git clone https://github.com/aws/aws-iot-device-sdk-js-v2.git
cd aws-iot-device-sdk-js-v2
npm install
cd samples/node/pub_sub
npm install
node dist/index.js --endpoint <endpoint>-ats.iot.us-west-2.amazonaws.com --root-ca <PathToRootCA> --cert <PathToCert> --key <PathToKey> Can you confirm that you are able to run the pub_sub example? |
I was not able to install this packages on Docker using node:12-alpine, aws-crt is also missing. |
@Rmannn we do not currently support Alpine Linux. There is an open feature request and I encourage you to upvote so we can prioritize based on community feedback. |
We are facing the same issue here, using Node 15.5.1 for Linux arm64. This is the error we get:
In fact there is no
Anyone has a clue what is going on? |
It seems my issue is due to the fact that |
@rodmaz Depending on what device you're using changing to node v14 might help. The even node versions are more stable and I was able to reproduce and then fix this error previously on the raspberry pi 4. If that doesn't work can you provide more info about the device you are using? |
@jmklix We are using Raspberry Pi 3B running Ubuntu Core 18 (arm64). But the issue seems related to |
Please try using node v14 to at least confirm that it doesn't work on the raspberry pi 3b. |
@jmklix I took another route. Decided to deploy this node package (
The package does install successfully, but towards the end the linking step fails.
Towards the very end, the linking step fails:
|
Figured out the reason. The problem is due to an issue on OpenSSL libs (1.1.1f), which is by default installed on Ubuntu 20 LTS. In order to fix this, replace OpenSSL with its newer version (1.1.1i) and rebuild the module. |
@rodmaz sorry for pointing you in the wrong direction. Thanks for finding and sharing a fix for this on Ubuntu! Is anyone else still having problems with the CRT binary? |
Greetings! It looks like this issue hasn’t been active in longer than a week. We encourage you to check if this is still an issue in the latest release. Because it has been longer than a week since the last update on this, and in the absence of more information, we will be closing this issue soon. If you find that this is still a problem, please feel free to provide a comment or add an upvote to prevent automatic closure, or if the issue is already closed, please feel free to open a new one. |
@jmklix I followed your instructions and run the pub_sub sample on Raspberry Zero W which confirms the problem:
|
I had the same problem with Raspbian 10.8
After installing globally it works, surprinsingly. |
I have the same problem with Raspberry Pi 3B+:
I can't run the pub_sub example... I followed exact example as described in AWS IoT |
Just a note on a closed issue: per [email protected] and [email protected] we now bundle pre-built linux aarch64 binaries. This hopefully addresses raspberry pi 4/3 issues, although the .node file path in some of the above errors does not match the way they are currently bundled (dist/bin/linux_arm64). armv7a support will be more difficult and will need to come at a later date. |
Hi @bretambrose , Is it because library is still lacking armv7 support? What am I missing?
/etc/s-agent/node_modules/aws-crt/dist/native/binding.js:60 Error: AWS CRT binary not present in any of the following locations:
|
Well only armv8 binaries have been added, so in this case armv7 is still going to fail and you'd need to do a full build of the crt and copy it over yourself. The thing holding back armv7 (and v6) binaries is finding a good docker image that has a sufficiently old glibc on it so that we don't get glibc version mismatches. We use the manylinux2014 images for all of the other builds since its glibc is 2.17, but it doesn't have an armv7 image (just a tag) and the best thing we've found so far is something with 2.24 I think. |
Thanks for the answer @bretambrose :) |
Confirm by changing [ ] to [x] below to ensure that it's a bug:
Describe the bug
Hi, I'm trying to use the AWS IoT SDK on Raspberry Pi Zero W but facing a problem when doing
npm install aws-crt
.After installation, when starting the project, I'm getting the following error:
SDK version number
Platform/OS/Hardware/Device
Raspberry Pi Zero W
To Reproduce (observed behavior)
Steps to reproduce the behavior (please share code)
Expected behavior
I would expect the project to install the dependency as usual. Are there some additional steps I should take to get the SDK working on Raspberry Pi Zero W?
Best Regards,
Markus
The text was updated successfully, but these errors were encountered: