<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>SW64 - tag - 沐木</title><link>https://oldletter.cn/tags/sw64/</link><description>SW64 - tag - 沐木</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Sun, 01 Dec 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://oldletter.cn/tags/sw64/" rel="self" type="application/rss+xml"/><item><title>信创实战：Nacos 在申威 3231 上的 RocksDB JNI 适配</title><link>https://oldletter.cn/posts/xinchuang-01-nacos/</link><pubDate>Sun, 01 Dec 2024 00:00:00 +0000</pubDate><author>mumu</author><guid>https://oldletter.cn/posts/xinchuang-01-nacos/</guid><description><![CDATA[<blockquote>
<p>系列：信创国产化适配 | 作者：lin | 更新：2026-07-18</p></blockquote>
<hr>
<h2 id="先把适配对象和结果讲清楚">先把适配对象和结果讲清楚</h2>
<p>本文详细记录的源码修改、汇编适配、JNI 编译和 JAR 改造，全部发生在申威 3231 的 SW64 环境。下文的工具链、汇编和构建命令均以 SW64 为目标，不包含龙芯 LoongArch 的编译过程。</p>
<p><code>rocksdbjni 8.8.1</code> 适配完成后，申威 3231 和 HX8000 均已正常运行。</p>
<table>
  <thead>
      <tr>
          <th>平台</th>
          <th>原始情况</th>
          <th>最终结果</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>龙芯 LoongArch</td>
          <td>当前已有可用支持</td>
          <td>只作现状对照，不套用申威编译过程</td>
      </tr>
      <tr>
          <td>申威 3231</td>
          <td>官方 8.8.1 JAR 缺少 SW64 原生库</td>
          <td>完成 SW64 汇编、编译和 JAR 改造后运行通过</td>
      </tr>
      <tr>
          <td>HX8000</td>
          <td>按现场环境单独验证</td>
          <td>运行通过</td>
      </tr>
  </tbody>
</table>
<p>原始故障仍要从 Nacos 的实际依赖看起。Nacos 经 JRaft 引入 <code>rocksdbjni 8.8.1</code>，官方通用 JAR 没有携带 SW64 原生库。申威 3231 的适配同时处理了 SWJDK、SW64 ABI、汇编实现、编译器、系统动态库和 Java 资源命名。</p>
<p>截至 2026-07-15，几个常见 Nacos 版本的依赖关系如下：</p>]]></description></item></channel></rss>