Skip to content
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

Fails to detect that qemu-user-static is installed when trying to create a jail for building ARM stuff. #811

Closed
4 tasks done
VVelox opened this issue Dec 18, 2020 · 6 comments · Fixed by #863
Closed
4 tasks done

Comments

@VVelox
Copy link

VVelox commented Dec 18, 2020

Prerequisites

  • Have you checked for an existing issue describing your problem?
  • Are you running the latest version?
  • Is your ports tree recent?
  • Is your FreeBSD Host on a supported release?

Describe the bug

Fails to detect that qemu-user-static is installed when trying to create a jail for building ARM stuff.

How to reproduce

[root@nibbles1]130|/src/FreeBSD/base/stable/12/sys/arm64/conf>poudriere jail -c -j 12stableAARCH64 -m src=/src/FreeBSD/base/stable/12 -a aarch64     
[00:00:00] Cross-building ports for aarch64 on amd64 requires QEMU
[00:00:00] Error: You need to install the qemu-user-static package or setup an emulator with binmiscctl(8) for aarch64
[root@nibbles1]0|/src/FreeBSD/base/stable/12/sys/arm64/conf>poudriere jail -c -j 12stableAARCH64 -m src=/src/FreeBSD/base/stable/12 -a arm.aarch64 
[00:00:00] Cross-building ports for arm.aarch64 on amd64 requires QEMU
[00:00:00] Error: You need to install the qemu-user-static package or setup an emulator with binmiscctl(8) for aarch64
[root@nibbles1]1|/src/FreeBSD/base/stable/12/sys/arm64/conf>pkg info qemu-user-static
qemu-user-static-3.1.0_8
Name           : qemu-user-static
Version        : 3.1.0_8
Installed on   : Fri Dec 18 10:27:38 2020 CST
Origin         : emulators/qemu-user-static
Architecture   : FreeBSD:12:amd64
Prefix         : /usr/local
Categories     : emulators
Licenses       : GPLv2
Maintainer     : emulation@FreeBSD.org
WWW            : http://wiki.qemu.org/Main_Page
Comment        : QEMU CPU Emulator (github bsd-user branch)
Annotations    :
        FreeBSD_version: 1202502
        repo_type      : binary
        repository     : n1
Flat size      : 71.2MiB
Description    :
QEMU is a FAST! processor emulator using dynamic translation to achieve
good emulation speed.
QEMU has two operating modes:

    * Full system emulation. In this mode, QEMU emulates a full system
(for example a PC), including a processor and various peripherials.
It can be used to launch different Operating Systems without rebooting
the PC or to debug system code.
    * User mode emulation (Linux host only). In this mode, QEMU can launch
Linux processes compiled for one CPU on another CPU. It can be used to
launch the Wine Windows API emulator or to ease cross-compilation and
cross-debugging.

As QEMU requires no host kernel patches to run, it is very safe and easy to use.

This port builds static bsd-user targets named like qemu-mips-static. While
still being experimental, people have already built many armv6/mips/mips64 ports
using these and, e.g., poudriere.  Some notes are also here:

        http://wiki.freebsd.org/QemuUserModeHowTo

WWW: http://wiki.qemu.org/Main_Page

Expected behavior

Screenshots

Environment

  • Host OS [e.g. 12.2 amd64]: FreeBSD nibbles1.vvelox.net 12.1-STABLE FreeBSD 12.1-STABLE r364334 vixen42 amd64
  • Jail OS [e.g. 12.0 powerpc]:
  • Browser: [e.g. chrome, safari]:
  • Poudriere Version [e.g. 3.3.1 or git hash or port version]: 3.3.6
  • Ports branch and revision [e.g. 2020Q3 r550754]: r558303

Additional context

@VVelox VVelox added the bug label Dec 18, 2020
@VVelox
Copy link
Author

VVelox commented Dec 19, 2020

Okay. Bad error message.

So binmiscctl was not configured and I did not think to originally at it as the error message said error, making it look like it was a alternative to having qemu installed.

@VVelox VVelox closed this as completed Dec 20, 2020
@igalic
Copy link
Contributor

igalic commented Dec 20, 2020

Error: You need to install the qemu-user-static package or setup an emulator with binmiscctl(8) for aarch64

this really is hard to understand

to me it implies that qemu is auto configured, which, let's be honest, it probably should be

@yzgyyang
Copy link
Member

yzgyyang commented Apr 28, 2021

I think error message is just incomplete. Simply installing qemu-user-static is not enough - you'd have to do service qemu_user_static onestart.

Edit: typo

@Un1q32
Copy link

Un1q32 commented Oct 30, 2022

I think error message is just incomplete. Simply installing qemu-user-static is not enough - you'd have to do service qemu-user-static onestart.

just found this after googling the error, this should absolutely be in the error message

@thierry-FreeBSD
Copy link
Member

Actually this is service qemu_user_static onestart ("_", not "-").

@yzgyyang
Copy link
Member

@thierry-FreeBSD Thanks! I must have made a typo - corrected my original comment.

Really hope the fix #863 can be merged soon.

@bdrewery bdrewery modified the milestones: 3.3.8, 3.5.0 Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants