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

能否release一个 支持mac m2 的 构建后的包 非常感谢 #459

Open
DavideyLee opened this issue Oct 12, 2023 · 19 comments
Open

能否release一个 支持mac m2 的 构建后的包 非常感谢 #459

DavideyLee opened this issue Oct 12, 2023 · 19 comments

Comments

@DavideyLee
Copy link

能否release一个 支持mac m2 的 构建后的包 非常感谢
[rocketmq-client-cpp-2.2.0-bin-release-darwin.tar.gz]是amd86的

@onetwo12cn
Copy link

能否release一个 支持mac m2 的 构建后的包 非常感谢
[rocketmq-client-cpp-2.2.0-bin-release-darwin.tar.gz]是amd86的

@lpflpf
Copy link

lpflpf commented Oct 23, 2023

应该是ARM 版本的, darwin 是intel 芯片的

@ghostg00
Copy link

同求

@lizhanhui
Copy link
Contributor

build.sh构建遇到什么问题了么?

@Sligcm
Copy link

Sligcm commented Dec 15, 2023

build.sh构建遇到什么问题了么?
MBP M2 Max,Docker 镜像:php:7.4.33-fpm-alpine3.16。
编译不下去。g++ 提示没有 -m64 选项。

123

@Sligcm
Copy link

Sligcm commented Dec 15, 2023

回复太慢了,我已经自己解决了。忽略上面的问题吧。

@xiaohutushen30
Copy link

回复太慢了,我已经自己解决了。忽略上面的问题吧。
大佬是怎么解决的 给个解决方向吧

@Sligcm
Copy link

Sligcm commented Dec 21, 2023

回复太慢了,我已经自己解决了。忽略上面的问题吧。
大佬是怎么解决的 给个解决方向吧

如果你是搞 PHP 的,下载 rocketmq-client-cpp-2.2.0 这个版本的,然后用 #338 里提供的 CMakeList.txt 和 build.sh 替换下载的那个版本里对应的两个文件,然后再执行 build.sh 就可以了。

@Sligcm
Copy link

Sligcm commented Dec 21, 2023

回复太慢了,我已经自己解决了。忽略上面的问题吧。
大佬是怎么解决的 给个解决方向吧

其实是因为 arm 架构的 alpine 系统的 g++ 不支持 -mXX 这个参数,g++ 时不需要这个参数,忽略这个参数即可。
而源代码里没有判断 arm 架构,只判断了 amd64 架构的 32 位 和 64 位。因为 amd64 架构下的 g++ 需要这个参数,所以加上了 -mXX(-m32/-m64)。
pull requests 里的那个哥们已经提交了解决方案,而作者一直迟迟没有接受并合并到主分支,从而导致 arm 架构不被支持。

@xiaohutushen30
Copy link

回复太慢了,我已经自己解决了。忽略上面的问题吧。
大佬是怎么解决的 给个解决方向吧

其实是因为 arm 架构的 alpine 系统的 g++ 不支持 -mXX 这个参数,g++ 时不需要这个参数,忽略这个参数即可。 而源代码里没有判断 arm 架构,只判断了 intel 的 32 和 64 位。给强加上了 -mXX(-m32/-m64)。 pull requests 里的那个哥们已经提交了解决方案,而作者一直迟迟没有接受并合并到主分支,从而导致 arm 架构不被支持。

image
报错了 看不出来啥原因

@xiaohutushen30
Copy link

已经编译出来.a文件 还差so文件了

@ifplusor
Copy link
Contributor

@xiaohutushen30 编译boost的时候没带zlib支持吧

@xiaohutushen30
Copy link

@xiaohutushen30 编译boost的时候没带zlib支持吧
怎么解决 还行大佬指教

@Sligcm
Copy link

Sligcm commented Dec 21, 2023

回复太慢了,我已经自己解决了。忽略上面的问题吧。
大佬是怎么解决的 给个解决方向吧

其实是因为 arm 架构的 alpine 系统的 g++ 不支持 -mXX 这个参数,g++ 时不需要这个参数,忽略这个参数即可。 而源代码里没有判断 arm 架构,只判断了 intel 的 32 和 64 位。给强加上了 -mXX(-m32/-m64)。 pull requests 里的那个哥们已经提交了解决方案,而作者一直迟迟没有接受并合并到主分支,从而导致 arm 架构不被支持。

image 报错了 看不出来啥原因

别慌,兄弟,忘记说了, boost 的包如果你没提前下载好的话,脚本会自动下载 https://sourceforge.net/projects/boost/files/boost/1.58.0/boost_1_58_0.tar.gz 的镜像版本,而这个版本的下载链接因为镜像服务器的关系,在国内可能会被就近指定到香港节点,而香港节点的这个包,没有打包子仓库的代码,所以 tools 里的工具都用不了,你去 boost 官方的仓库里下载 boost_1_58_0.tar.gz 这个包,大概是 83.6M,然后放在和 build.sh 同级目录,执行脚本的时候,它会自动挪到 tmp_down_dir 里。这样再执行就好了,其他包不用提前下载了,都是没问题的。

@Sligcm
Copy link

Sligcm commented Dec 21, 2023

@xiaohutushen30 编译boost的时候没带zlib支持吧
怎么解决 还行大佬指教

对了,编译有缓存,为了避免出现不必要的麻烦,你最好是直接都重新操作一遍。

@xiaohutushen30
Copy link

@xiaohutushen30 编译boost的时候没带zlib支持吧
怎么解决 还行大佬指教

对了,编译有缓存,为了避免出现不必要的麻烦,你最好是直接都重新操作一遍。

多谢 按照你的方法解决了

@Sligcm
Copy link

Sligcm commented Dec 22, 2023

@xiaohutushen30 编译boost的时候没带zlib支持吧
怎么解决 还行大佬指教

对了,编译有缓存,为了避免出现不必要的麻烦,你最好是直接都重新操作一遍。

多谢 按照你的方法解决了

客气~

@ridy-0204
Copy link

大佬,我是m1芯片,1.58安装不上,
image
1.69的
image
1.72的
image
1.84的可以编译通过,但是确实endian.hpp,这应该怎么解决呢

@doubleyoung
Copy link

M1 pro, arm64
I tried a few boost version, Unfortunate, all failed.

  • boost 1.72:integral_wrapper.hpp:73:31: error: integer value -1 is outside the valid range of values [0, 3] for this enumeration type [-Wenum-constexpr-conversion]
  • boost 1.69: clang: error: unknown argument: '-fcoalesce-templates'
  • boost 1.77/1.79: no member named 'piecewise_construct' in namespace 'std'; did you mean 'piecewise_construct_t'?
  • boost 1.84:/rocketmq-client-cpp-2.2.0-source-release/src/common/ByteOrder.h:23:10: fatal error: 'boost/detail/endian.hpp' file not found

how does it work? who knows?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants