-
-
Notifications
You must be signed in to change notification settings - Fork 90
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
Core doesn't build on RPI 3B #1189
Comments
The Does |
As showed in that is written as "cfg_if". Is there any difference with it?. |
I will have to wait:
UPDATED:
|
It is not a bug, crate is named |
cfg_if
@EchedeyLR could you clone https://github.com/jgallagher/rusqlite and try building it (just |
Okay, I am going to try. I think there are different issues mixed here anyways and started with the first one which I have no idea in which sense could be related if everything is well specified. |
As for the original issue, try cloning and compiling https://github.com/derekjw/try_from separately from deltachat-ffi |
https://github.com/jgallagher/rusqlite/issues/618 |
it seems both had the same issue. |
Maybe rust compiler/linker is simply out of memory, build processes crash and then crate can't be found. Rust could have reported this error better of course. You probably need to cross-compile on your normal desktop machine and use resulting |
That sounds weird. RPI3B has just 1GB ram and using microsd card is not suitable to use swap memory. Is there a way to compile using a few memory resources without crosscompiling? |
There is https://github.com/thepowersgang/mrustc but it seems it only supports x86. Try reduce the number of jobs with |
I am trying to do it during python bindings build but I have no idea how to make it. |
If you are using
|
The new issue is here now:
|
I will have to test a way to put swap to the rpi and try to build again as microsd are not suitable to have swapfile or swap partition. EDITED: |
Compiling rust takes time. Even on my i7 laptop i have to wait several minutes for it to complete. I don't see an option to make this easily possible on a raspi3. I think cross compiling should be the way to go, the same as we do for android phones/apple devices. |
My common computers have similar specification but with the advantage to have 1gb more of ram and swap (until 2gb) set by default. I dont have any issues to wait but the memory requirements. If I need to ask for someone to let me their computer to compile it is not a good solution as this use to be also common in some places where I live. |
This error seems to be sort of known, looks like libc6-dev is missing: https://stackoverflow.com/questions/35822377/raspberry-pi-fatal-error-sys-cdefs-h-no-such-file-or-directory |
Thank you. For the next time. I didnt check the repo at all but I didnt see a dependence list in expected files. This is what I check at first but as I didnt see it I just continued. Could it be created for the next time? |
I think it should be taken in account from the base of a boostraped debian installation or similar. |
Did you manage to compile it btw? List of dependencies can sure be added, but most likely |
libc6-dev was already installed. I will check that issue to understand better. |
I have had to reinstall libc6-dev and linux-libc-dev. It seems both had by default faulty files (I dont understand it) as also was referenced in the issue you pointed to me a little time before. I hope i dont need to reinstall every build-essentials dependence ;-; UPDATED: |
More than 48 hours in this step.
I even stopped it, change "install_python_bindings" to the default conf and tried again without any change. I think by now is not even possible to compile Delta Chat core in low resources. |
Rust does a lot of crazy stuff during compiling. This takes a long time even on the ci/local system. I think the only way to do this is by cross compiling it from a stronger system for the raspi. |
@EchedeyLR Set |
I guess we should move this |
I already spoke about it. No, the issue is not visible at all as far as people only look for open issues. Also, you have the projects and milestones special for developers which help to maintain up-to-date and not having to research a lot between the issues. Also, in which case this is not a bug??. I need people to see if the problem is reproduced to be able to classify as that or not. |
maybe, this is more sth. for the forum, as @pabzm pointed out, build works at least one some raspberry. however, of course, i have no doubt that there are tons of build problems on different machines. but as long as there is no actionable item for the core development i would not keep it open here. as @Jikstra pointed out, the open issues are to coordinate things among the devs - sure, there are other ways to do that, but it was decided among the devs to use the issue tracker this way. |
I don't agree at all. Here some users were referenced in their time from the forum to report issues here (that you and other people had to fill in the end) and is used by others users already independently of that. It's not a "developer tool" as far I see anymore. For that you already use Projects and Milestones with the Canvan style. |
@EchedeyLR If you are going to work on this issue, we can reopen the issue and assign it to you. But if you don't have time to work on it, it is not actionable, as other devs don't have Raspberry Pi around or can't reproduce the same problems. |
I can work on it, I just needed more time than usual for it. |
Also, I don't see acceptable to close the issue if only 2 people in completely different conditions got it work. With a fast search about my python3-dev issue (and other header packages) I can see in stackoverflow plenty of issues about RPI using even Raspbian (not Debian in raw) and not much old with partial solutions coming from re-installing the package not working... |
Thank you @link2xt |
@EchedeyLR thanks for taking care! |
@EchedeyLR please note that we do not officially support RPI at this point -- also a lot of information is outdated here on this issue. |
I am going to try with the current master already. |
It's not weekend yet which is when I can work on the issue. |
I tried during some hours to make the system in the microsd work. The main filesystem (root) in ext4 got corrupted and I tried to repair the filesystem. I could not make it boot and I don't think to make all the configs again to use it just me. Given that, I abandon the issue. If other person test it, be sure that is made in the very same conditions to not get surprises when some people say that it works and it doesn't in a default installation being Raspbian or Debian. |
oh, sorry to hear about the filesystem corruption, that's annoying.
Thanks for checking back and reporting.
…On Sat, Jul 18, 2020 at 08:20 -0700, Echedenyan wrote:
I tried during some hours to make the system in the microsd work. The main filesystem (root) in ext4 got corrupted and I tried to repair the filesystem. I could not make it boot and I don't think to make all the configs again to use it just me.
Given that, I abandon the issue.
If other person test it, be sure that is made in the very same conditions and to not get surprises when some people say that it works and it doesn't in a default installation being Raspbian or Debian.
--
You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
#1189 (comment)
|
This, together with random compilation errors, sounds like an underpowered RPI, check "Powering issues" section of https://ownyourbits.com/2019/02/02/whats-wrong-with-the-raspberry-pi/ and related issue raspberrypi/linux#2367 |
Please, don't avoid the issue with other. The power supply fit the specification required and the issue with the microsd is related to other thing. I didn't have such corruption issue with some 16 GB and 32 GB sd cards. The compilation was also made in external hard drive and the swap too. The issue was out of memory and I could ensure it checking htop. And the tests adding swap in different sizes and cleaning and rebuilding the core to see if it stopped at the same step. While the deltachat core was compiled successfully final steps involved python bindings and were not successful at all because headers were not found. |
The issue with faulty files was something common in raspbian default installations as you can check in some random threads |
I am trying to build on |
@link2xt if you can, test with Debian too. |
Generate a new one using https://salsa.debian.org/raspi-team/image-specs or get one tested here https://raspi.debian.net/tested-images/ |
Please, include specifications of your Pi model. |
I am using Raspberry Pi 4 Model B with 4GB RAM and Here is the list of steps I used to build it:
|
@link2xt To be sure I checked kern.log and syslog files of the last time running were the compilation was made and didn't was anything related to under-voltage, etc. About your specs, do you have Raspberry Pi Model 3B which is under 1GB of RAM by default? |
No, this is the only RPI I have. |
Okay, maybe a python3-dev re-installation could have solved my issue not finding the headers correctly but as pointed before the core compiled perfectly until that step in which python-bindings installation failed. Thank you for taking time to make a test. |
After you have built the core successfully in release mode, linking python bindings with the rust library is definitely possible, it is much faster and takes less memory. So not found headers is likely some package not installed or broken. I have not tried Debian on raspberry yet, but headers should be the same as on desktop Debian, which I use every day. Going to try a few things on "official" OS first and will switch to some free OS after that, likely Debian you linked to above. |
Tested on master at this post time.
The text was updated successfully, but these errors were encountered: