mininet / mininet

Emulator for rapid prototyping of Software Defined Networks

Home Page:https://mininet.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Feature request: ARM64/Apple Silicon Mininet VM

ez4bk opened this issue · comments

Expected/Desired Behavior:

Mininet VM should be runnable on an M1 Mac machine as well.

Actual Behavior:

Any VM software would report that only x86 architecture is supported.

commented

It would be nice to have an ARM64 VM.

What is the result if you try to boot an x86 VM under qemu or UTM? Considering that we use qemu to test the x86 VM, it should probably work.

In general, it would be good to have mininet compiled under ARM and ARM64, regardless of the fact that it runs in a VM or on a board/computer/etc. I have been exploring this, and the main point for newer versions in that some components depend on Intel specific libraries.
I didn't have the time to explore how critical these libraries are.
From what I saw when I browsed through them, they mainly dealt with optimisations. Could we live without them, given that this is an emulator. At least I expect functionality and not speed in this environment.

I have a MacBook Pro m1 and tried to compile for arm Linux (using Ubuntu and Fedora for arm), but I have a problem with pyflakes and pyflakes3 packages. I need a version for arm

commented

I use a MacBook Pro m2, and I face the same issue as well.

I tried to use a VM (in fact, it's orbstack) of Linux 22.04LTS to solve the problem.

However, it's still a problem: ( I follow the steps in a python3 venv)
When I follow the steps on download, I met a problem:

he following packages were automatically installed and are no longer required:
libperl5.34 libtiff5 perl-modules-5.34
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 287 not upgraded.
Installing Mininet core
/Users/huluobo/mininet /Users/huluobo
cc -Wall -Wextra
-DVERSION="PYTHONPATH=. python -B bin/mn --version 2>&1" mnexec.c -o mnexec
: warning: missing terminating " character
mnexec.c: In function ‘main’:
: error: missing terminating " character
mnexec.c:208:28: note: in expansion of macro ‘VERSION’
208 | printf("%s\n", VERSION);
| ^~~~~~~
mnexec.c:208:35: error: expected expression before ‘)’ token
208 | printf("%s\n", VERSION);
| ^
make: *** [Makefile:50: mnexec] Error 1

Actually, I do need a version for arm.