GithubHelp home page GithubHelp logo

Comments (9)

sgiannoulis avatar sgiannoulis commented on April 20, 2024 1

@cabelitos This is great, no need to manually compile and install then anymore the cmake in an arm environment and run our own scripts to make the installations with the correct aarch64 cmake version.

from openr.

cooperlees avatar cooperlees commented on April 20, 2024

Hi,

Would love any cmake help. Here tho, you just don't have OpenSSL libraries / headers. OPENSSL_ROOT_DIR is not set as the error says. Try install OpenSSL development packages.

If you can, it's try Ubuntu 18.04 as that is what our CI runs in. There is a known build error tho today with one dependency I have not got around to fixing. PRs welcome to make your life easy if it does not over complicate things etc. etc.

We do not test aarch64 Open/R at all or it's dependencies. So expect some potential bugs, but it should be mostly fine.

from openr.

sgiannoulis avatar sgiannoulis commented on April 20, 2024

The real problem is i got openssl installed. But since 3.14.0 cmake is not directly available for aarch64 architectures (check https://github.com/Kitware/CMake/releases/tag/v3.14.0 ), i used 3.20.0 (edited the cmake dependency manifest file to get and build that instead, https://github.com/Kitware/CMake/releases/download/v3.20.0/cmake-3.20.0-linux-aarch64.tar.gz ) which has some issues detecting correctly openssl installation. ( i have seen it in the past, newer versions of cmake need slightly different way to define how to find openssl installed libs, so the relative Cmakefiles need editing). If i use my natively compiled cmake 3.14.0 aarch64 all builds nicely. So the problem is, how can i tell your build scripts NOT to download and use the predefined cmake 3.14.00 x86 but to skip this step and use the local system installed cmake variant (13.4.0 aarch64). Is there an easy way to do that ?

from openr.

cooperlees avatar cooperlees commented on April 20, 2024

I am not sure. I am not a cmake expert. Maybe we try move our x86_64 to 3.20.0 and see if that helps.

from openr.

sgiannoulis avatar sgiannoulis commented on April 20, 2024

Its not a cmake issue, but rather if the python based facebook build architecture has a control knob to use the system cmake and not download its own, hence why i asked here if such a knob exists ( trying to avoid diving into the python based build system to figure out how it works and what the available control knobs are). In any case, i managed to make it work with downloading 3.20.00 for building the python-six dependency. For the rest i use the system cmake (3.14.0) issuing scripted build commands in order to avoid using the python based build system so i can have control over the build process.
So after solving this issue, i got openR latest RC working in aarch64 ubuntu 16.04.

from openr.

cabelitos avatar cabelitos commented on April 20, 2024

Hey guys, I was trying to make this compile on my Apple M1 in order to know more about this project and I stumbled into this issue.

I realized that fbzmq does not run on os x, but fortunately I created a port for it which I submitted a pull request in here: facebookarchive/fbzmq#19

I do not know (yet) the required effort to port openr to osx on apple silicon, but I'll keep investigating. Since I'm dealing with ARM I'll also try to fix the compilation errors on linux.

I know that on real life open/r will not run on Apple hardware, but I guess this will delight me as a side project. ( But other BSD systems can benefit from it.)

Thank you.

from openr.

cooperlees avatar cooperlees commented on April 20, 2024

Hi,

If the code changes are not invasive we could potentially merge this. I am keen not to introduce complexity (and thus more scope for bugs) into Open/R to make it run on BSD/Darwin as we'll never run production network devices on said operating systems.

I realized that fbzmq does not run on os x, but fortunately I created a port for it which I submitted a pull request in here: facebook/fbzmq#19

Thanks, Will get some fbzmq pros to look at this throughout the week.

I do not know (yet) the required effort to port openr to osx on apple silicon, but I'll keep investigating. Since I'm dealing with ARM I'll also try to fix the compilation errors on linux.

I know that on real life open/r will not run on Apple hardware, but I guess this will delight me as a side project. ( But other BSD systems can benefit from it.)

A "forwarding information base" FIB plugin will need to be written to talk to the BSD/Darwin routing subsystem (i.e. install the routes). In linux we do this via the netlink API. I am unsure what it is / how to drive it on BSD/Darwin.

from openr.

cabelitos avatar cabelitos commented on April 20, 2024

Hi @cooperlees , thank you for the input

If the code changes are not invasive we could potentially merge this. I am keen not to introduce complexity (and thus more >scope for bugs) into Open/R to make it run on BSD/Darwin as we'll never run production network devices on said operating > >systems.

Yeah, I think that it will require some work to do this port. I don`t think it will be as small as fbzmq was.

Thanks, Will get some fbzmq pros to look at this throughout the week.

A "forwarding information base" FIB plugin will need to be written to talk to the BSD/Darwin routing subsystem (i.e. install the routes). In linux we do this via the netlink API. I am unsure what it is / how to drive it on BSD/Darwin.

I'll take a look, I sent some hours yesterday checking what kind of operations you guys do with the netlink API and if it's possible to achieve the same behavior on BSD.

Btw: I created a PR that enables to compile Open/R on ARM linux: #95

from openr.

cooperlees avatar cooperlees commented on April 20, 2024

#95 is merged. Now just to continue making the build itself work :P

from openr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.