尝试在FreeBSD 的jail、bhyve里安装TrinityCore

先上结论,直接编译安装TrinityCore失败,bhyve方式成功,jail方式没成功。

直接在FreeBSD下编译失败

按部就班的安装

编译的时候报错

所以安装:

pkg install boost-libs-1.84.0

把其它依赖库也全部安装:

pkg install mariadb1011-server
pkg install mysql81-server-8.1.0

编译

cd TrinityCore
mkdir build
cd buildcmake ../ -DCMAKE_INSTALL_PREFIX=/home/wow/server

编译不成功,放弃。 

在Ubuntu jail里安装

 首先为了提供服务,需要使用桥接模式

这里没有配通。所以最终并没有在jail里尝试下面操作。

为了节省编译时间,直接将trinitycore cp过来

启动服务

在Ubuntu bhyve里安装

在FreeBSD里创建Ubuntu bhyve虚拟机

使用cbsd 创建Ubuntu bhyve虚拟机

具体参见:CBSD创建和管理bhyve容器Ubuntu@FreeBSD-CSDN博客

需要配置ip地址为固定地址。 

直接复制TrinityCore和mysql数据库

具体参见:备份和镜像TrinityCore-CSDN博客

复制TrinityCore就可以节省编译的时间。

导入mysql就可以使用服务器以前的存档。

最后是成功了的。

总结

如果是ubuntu操作系统,那么可以直接省去创建bhyve虚拟机的过程,直接复制安装。

如果是FreeBSD系统,那么可以创建Ubuntu bhyve虚拟机,然后在虚拟机里复制安装。

还遗留的问题:FreeBSD bhyve虚拟机这个实践过程中发现网速很慢,局域网竟然有600ms的延时,实在不可思议,还需要今后解决问题。

对啊,如果用FreeBSD的linux兼容模式跑会怎么样呢? 以后再做实验看看。

调试

报错 Could NOT find Boost (missing: Boost_INCLUDE_DIR system filesystem

CMake Error at /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Boost (missing: Boost_INCLUDE_DIR system filesystem
  program_options iostreams regex locale) (Required is at least version
  "1.74")
Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  /usr/local/share/cmake/Modules/FindBoost.cmake:2399 (find_package_handle_standard_args)
  dep/boost/CMakeLists.txt:32 (find_package)
pkg安装

pkg install boost-libs-1.84.0

cmake报错 Could not find the MySQL libraries

CMake Error at /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could not find the MySQL libraries! Please install the development
  libraries and headers (missing: MYSQL_LIBRARY MYSQL_INCLUDE_DIR lib)
Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  cmake/macros/FindMySQL.cmake:343 (find_package_handle_standard_args)
  dep/mysql/CMakeLists.txt:11 (find_package)
先安装了mariadb1011-server,没管用。(原来是在host主机安装的....)

试试安装

pkg install mysql81-server-8.1.0

搞定! 大约只安装mariadb1011就行。

make 报错

[ 10%] Building CXX object dep/CascLib/CMakeFiles/casc.dir/src/common/FileStream.cpp.o
/home/wow/TrinityCore/dep/CascLib/src/common/FileStream.cpp:78:73: error: use of undeclared identifier 'O_LARGEFILE'
   78 |         handle = open(pStream->szFileName, O_RDWR | O_CREAT | O_TRUNC | O_LARGEFILE, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
      |                                                                         ^
/home/wow/TrinityCore/dep/CascLib/src/common/FileStream.cpp:126:23: error: variable has incomplete type 'struct stat64'
  126 |         struct stat64 fileinfo;
      |                       ^
/home/wow/TrinityCore/dep/CascLib/src/common/FileStream.cpp:126:16: note: forward declaration of 'stat64'
  126 |         struct stat64 fileinfo;
      |                ^
/home/wow/TrinityCore/dep/CascLib/src/common/FileStream.cpp:132:43: error: use of undeclared identifier 'O_LARGEFILE'
  132 |         handle = open(szFileName, oflag | O_LARGEFILE);
      |                                           ^
/home/wow/TrinityCore/dep/CascLib/src/common/FileStream.cpp:209:20: error: use of undeclared identifier 'lseek64'; did you mean 'lseek'?
  209 |                 if(lseek64((intptr_t)pStream->Base.File.hFile, (off64_t)(ByteOffset), SEEK_SET) == (off64_t)-1)
      |                    ^~~~~~~
      |                    lseek
搞不定....放弃FreeBSD下直接编译安装。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/35493.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java-冒泡排序 1

## Java中的冒泡排序 ### 1. 冒泡排序的基本概念 冒泡排序(Bubble Sort)是一种简单且直观的排序算法。它通过重复地遍历待排序的列表,比较相邻的元素并交换它们的位置,使较大的元素逐步从列表的一端移动到另一端,就像…

css控制整个div下的所有元素中的文字放大缩小

css控制文字放大缩小 话不多说,直接上代码,我用了最简单粗暴的方法,找个下面所有的元素,然后遍历放大所有文字 add() {var div this.$refs[myDiv];var elements div.querySelectorAll("*");for (var i 0; i < elements.length; i) {var fontSize parseInt(win…

正则表达式与Pyhton

一、正则表达式的规则 1、支持普通字符匹配 2、元字符&#xff0c;一个符号匹配一堆字符 \d 匹配数字 \w 匹配数字、字母、下划线 \D \d的取反&#xff0c;除了数字全部匹配 \W \w的取反 [abc] 匹配字母a、b、c [^abc] [abc]的取反&#xf…

还不到6个月,GPTs黄了

相比起来&#xff0c;人们还不如使用一个足够强大、灵活且通用的AI助手来满足各类复杂需求。更严重的是一些独立GPTs显露出的安全隐患。除此之外&#xff0c;最大的问题在于OpenAI模糊不清的货币化政策。 文章正文 上周&#xff0c;不少人发现微软官网忽然更新了一条“GPT Bu…

深度解析拆分盘到底是怎样的运行逻辑!

一、引言 在数字经济的蓬勃发展中&#xff0c;拆分盘投资方式逐渐崭露头角&#xff0c;引起了广大投资者的关注。不同于传统的投资模式&#xff0c;拆分盘以其独特的拆分策略&#xff0c;为投资者提供了一种看似能够持续增值的新途径。本文将深入探讨拆分盘的基本原理、运作实…

BW:CP里添加信息对象小问题记录

之前做视图直接添加进CP里&#xff0c;以为不能直接往CP里加信息对象&#xff0c;还专门建了一个带信息对象的模型&#xff0c;把信息对象拖到CP里&#xff0c;然后再链接视图的字段 今天发现原来不用这样&#xff0c;直接加就可以&#xff0c;小记一下 如图直接诶创建&#x…

Linux驱动开发-02字符设备驱动开发初步

一、驱动开发的前期准备 在进入驱动开发之前&#xff0c;需要烧写UBoot、内核、设备树&#xff0c;做一些前期的准备工作&#xff0c;确保我们开发板上的内核版本和Ubuntu上是一致的才能进行正式开发 1.U-Boot 2.内核版本 3.使用TFTP挂载的内核和设备树 二、Linux驱动开发与裸机…

go的reflect实战

架构设计&#xff0c;有处设计&#xff0c;需要将string类型转为instance的实际类型&#xff0c;不更改业务代码的前提下&#xff0c;修改接口数据 因为涉及到unmarshal&#xff0c;因此要先判断instance中的存储的值是否已经是一个指针 如果不是&#xff0c;则需要包装为一个指…

记一次elementui时间线的实现

实现效果 点击展开&#xff0c;每次累加五条数据进行展示 实现思路 起始本质上就是一个分页查询&#xff0c;只不过按新的形式展示&#xff0c;然后也不统计总数&#xff0c;每次只展示固定的5条数据点击加载更多&#xff0c;就展示下一页&#xff0c;页的页数进行1&#xff…

ONLYOFFICE 文档 8.1 发布:重塑文档处理

官网链接&#xff1a;ONLYOFFICE官网 一、PDF编辑器功能强大&#xff1a;创造跟随想象 在追求无界办公与高效创作的今天&#xff0c;ONLYOFFICE再次引领风潮&#xff0c;正式发布了其桌面编辑器的最新版本——ONLYOFFICE桌面编辑器8.1。这一版本不仅巩固了其作为顶级办公套件…

python3使用ast.parse详解

使用ast库分析python3脚本, 并对脚本进行一些处理, 比如注释pirnt语句 一.基础知识 官方网址连接 ast — Abstract Syntax Trees ast库可以方便的分析python代码结构, 并做一些处理, 很适合对大量脚本文件做批量处理, 比如把print语句全部注释等. 直观的打印出代码结构 impo…

Python中令人困惑的模块导入

Python中令人困惑的模块导入 一句话总结: 绝对路径保平安 相关文件见此 问题描述 我在过去很长一段使用Python的时间里, 都仅限于一些简单模块, 文件结构也都很简单, 文件嵌套不会超过2层, 所以即便在模块导入上碰到些Module Not Found的问题, 也都是出问题那会儿去网上搜下方…

itextpdf-PdfStamper写入文件流到ByteArrayOutputStream注意事项

itextpdf-PdfStamper写入文件流到ByteArrayOutputStream注意事项 1、前情提要 最近做项目时有个需求&#xff0c;把图片合成pdf并且加水印&#xff0c;然后通过base64返回到前端。本来想的很简单&#xff0c;使用PdfStamper&#xff0c;把参数FileOutputSteam换成ByteArrayOutp…

简述Java项目中VO,BO,PO,DO,DTO之类的文件概念、易混点

VO&#xff0c;BO&#xff0c;PO&#xff0c;DO&#xff0c;DTO 概念易混点一&#xff1a;VO和DTO- 让我们通过一个实例来阐释DTO和VO的概念及其应用差异&#xff1a;小结&#xff1a;VO专注于展示&#xff0c;而DTO则用于数据的传输和业务逻辑的处理。 二&#xff1a;BO和PO小…

公益培训|半导体与集成电路项目制培训项目

关于我们 硬蛋产业学院&#xff0c;基于硬蛋创新(http://00400.HK)在芯片产业的资源和技术优势&#xff0c;引进全球领先的芯片应用技术&#xff0c;为国内培养芯片应用技术人才&#xff0c;助力芯片应用产业发展。 硬蛋产业学院在国家各主管部门、广东省、深圳市及社会各界的大…

AI 激发算力需求暴增,施耐德电气解码智算中心发展

随着全球碳达峰目标的持续推进&#xff0c;各行各业都在加速绿色转型的步伐&#xff0c;尤其是高耗能产业更是备受关注。人工智能行业以其迅猛的发展速度令人瞩目&#xff0c;它所带来的不仅是算力需求的飙升&#xff0c;更是日益凸显的能耗问题。 目前&#xff0c;人工智能预…

AVI 是什么格式,AVI 格式用什么播放器打开?

AVI 是什么格式&#xff1f;提到 AVI 格式想必大家多数会想到在 DVD 横行的年代&#xff0c;光盘中所包含的媒体视频格式多是以 AVI 格式存储。AVI 是一个非常通用的容器格式&#xff0c;支持多种视频和音频编解码器。这意味着从DVD中提取视频内容时&#xff0c;可以通过转码为…

发电机保护屏产品介绍,组成

发电机保护屏产品介绍&#xff0c;组成 发电机保护屏是用于保护发电机组的电气装置。它根据发电机的类型和实际运行要求&#xff0c;将多种保护装置组合在一起&#xff0c;形成一个保护屏柜。发电机保护测控屏是指把发电机类保护装置集中在安装在一个控制柜里&#xff0c;主要用…

Java程序递归及mybatis递归查询

之前项目组有个需求&#xff0c;定时同步机构的信息。已知三方接口由于返回数据量很大&#xff0c;所以最后需要三方提供一个可根据机构编号获取当前机构及子机构信息的接口。而不是一次性返回全部机构信息&#xff01; 由于这次需求也用到了递归&#xff0c;所以记录下&#…

Python自动化操作:简单、有趣、高效!解放你的工作流程!

今天跟大家分享一套自动化操作流程解决方案&#xff0c;基于Python语言&#xff0c;涉及pyautogui、pyperclip、pythoncom、win32com依赖包。安装命令为&#xff1a; pip install pyautoguipip install pyperclippip install pythoncompip install win32compyautogui 是一个自…