[GH-ISSUE #4129] illegal instruction on ARMv6 #3259

Closed
opened 2026-05-05 14:06:14 -06:00 by gitea-mirror · 6 comments
Owner

Originally created by @Zeyu-W on GitHub (Apr 6, 2024).
Original GitHub issue: https://github.com/fatedier/frp/issues/4129

Bug Description

I am trying to deploy the FRP on my Raspberry Pi Zero W (as the client), but when I execute the "./frpc -c frpc.toml" I got the "illegal instruction" problem. I suppose the processor that the RPI Zero W has is an ARMv6-based processor, and it looks like FRP was not compiled for ARMv6, may I ask whether there is a compatible FRP version for ARMv6?

frpc Version

0.55.1

frps Version

0.55.1

System Architecture

linux/arm

Configurations

as normal

Logs

No response

Steps to reproduce

...

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @Zeyu-W on GitHub (Apr 6, 2024). Original GitHub issue: https://github.com/fatedier/frp/issues/4129 ### Bug Description I am trying to deploy the FRP on my Raspberry Pi Zero W (as the client), but when I execute the "./frpc -c frpc.toml" I got the "illegal instruction" problem. I suppose the processor that the RPI Zero W has is an ARMv6-based processor, and it looks like FRP was not compiled for ARMv6, may I ask whether there is a compatible FRP version for ARMv6? ### frpc Version 0.55.1 ### frps Version 0.55.1 ### System Architecture linux/arm ### Configurations as normal ### Logs _No response_ ### Steps to reproduce 1. 2. 3. ... ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [X] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
Author
Owner

@Zeyu-W commented on GitHub (Apr 6, 2024):

我试图在我的 Raspberry Pi Zero W(作为客户端)上部署 FRP,但是当我执行“./frpc -c frpc.toml”时,我遇到了“非法指令”问题。 我猜RPI Zero W的处理器是基于ARMv6的处理器,并且看起来FRP不是为ARMv6编译的,请问是否有兼容ARMv6的FRP版本?

<!-- gh-comment-id:2041022684 --> @Zeyu-W commented on GitHub (Apr 6, 2024): 我试图在我的 Raspberry Pi Zero W(作为客户端)上部署 FRP,但是当我执行“./frpc -c frpc.toml”时,我遇到了“非法指令”问题。 我猜RPI Zero W的处理器是基于ARMv6的处理器,并且看起来FRP不是为ARMv6编译的,请问是否有兼容ARMv6的FRP版本?
Author
Owner

@fatedier commented on GitHub (Apr 8, 2024):

You can try to compile the corresponding version for the environment by yourself.

<!-- gh-comment-id:2041887211 --> @fatedier commented on GitHub (Apr 8, 2024): You can try to compile the corresponding version for the environment by yourself.
Author
Owner

@peace4j commented on GitHub (Apr 10, 2024):

我试图在我的 Raspberry Pi Zero W(作为客户端)上部署 FRP,但是当我执行“./frpc -c frpc.toml”时,我遇到了“非法指令”问题。 我猜RPI Zero W的处理器是基于ARMv6的处理器,并且看起来FRP不是为ARMv6编译的,请问是否有兼容ARMv6的FRP版本?

It also happened on my CentOS 7. And I compiled and built it by myself on my CentOS7 and after that it's OK then. It's seems something missing or something not compitable with the target system in the pre-compiled binary file.

<!-- gh-comment-id:2047049825 --> @peace4j commented on GitHub (Apr 10, 2024): > 我试图在我的 Raspberry Pi Zero W(作为客户端)上部署 FRP,但是当我执行“./frpc -c frpc.toml”时,我遇到了“非法指令”问题。 我猜RPI Zero W的处理器是基于ARMv6的处理器,并且看起来FRP不是为ARMv6编译的,请问是否有兼容ARMv6的FRP版本? It also happened on my CentOS 7. And I compiled and built it by myself on my CentOS7 and after that it's OK then. It's seems something missing or something not compitable with the target system in the pre-compiled binary file.
Author
Owner

@molpie commented on GitHub (Apr 12, 2024):

Same problem on Raspberry Pi Model B Rev 2.
I tried generating the executables for arm on amd64 (Current version: 0.57.0), using package.sh, but the error remains.
Compiling directly on Raspberry Pi Model B Rev 2 the error does not occur.
It seems that the problem is related to golang:
https://github.com/golang/go/issues/62475#issuecomment-1708650228
After setting GOARM=6 in the Makefile.cross-compiles file, the generated files for arm on amd64 also work correctly on Raspberry Pi Model B Rev 2.

<!-- gh-comment-id:2051583809 --> @molpie commented on GitHub (Apr 12, 2024): Same problem on Raspberry Pi Model B Rev 2. I tried generating the executables for arm on amd64 (Current version: 0.57.0), using package.sh, but the error remains. Compiling directly on Raspberry Pi Model B Rev 2 the error does not occur. It seems that the problem is related to golang: https://github.com/golang/go/issues/62475#issuecomment-1708650228 After setting GOARM=6 in the Makefile.cross-compiles file, the generated files for arm on amd64 also work correctly on Raspberry Pi Model B Rev 2.
Author
Owner

@fatedier commented on GitHub (Apr 12, 2024):

@molpie Thank you for your testing and research.

I will consider compiling a separate binary file for Linux armv6 in the next version.

<!-- gh-comment-id:2051627202 --> @fatedier commented on GitHub (Apr 12, 2024): @molpie Thank you for your testing and research. I will consider compiling a separate binary file for Linux armv6 in the next version.
Author
Owner

@Zeyu-W commented on GitHub (Apr 12, 2024):

@molpie Thank you for your testing and research.

I will consider compiling a separate binary file for Linux armv6 in the next version.

Great! That will be very helpful for any ARMv6-based devices used as the hub of sensor network.

<!-- gh-comment-id:2051636291 --> @Zeyu-W commented on GitHub (Apr 12, 2024): > @molpie Thank you for your testing and research. > > I will consider compiling a separate binary file for Linux armv6 in the next version. Great! That will be very helpful for any ARMv6-based devices used as the hub of sensor network.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#3259
No description provided.