# 常见问题

## 常规

**什么是 Rome 协议？** Rome 是一个 EVM 执行环境，原生运行在 Solana 运行时内部。Solidity 合约可部署到 Solana，并可直接通过 CPI 访问所有 Solana 程序。参见 [什么是 Rome？](/zh/ru-men/what-is-rome.md)

**Rome 是跨链桥吗？** 不是。Rome EVM 作为一等公民程序运行在 Solana 的运行时中。不同链之间没有消息中继。EVM 状态就是 Solana 状态。

**Rome 是 Rollup 吗？** Rome 使用 OP Stack 组件（OP-Geth、Hercules 索引器）以兼容以太坊 RPC，但 EVM 执行发生在 Solana L1 上——而不是在单独的 Rollup 链上。

## 开发

**我可以使用现有的 Solidity 合约吗？** 可以。标准 Solidity 合约可在 Rome 上原样部署。如果你的合约使用 Chainlink 预言机，Oracle Gateway 提供相同的 `AggregatorV3Interface`.

**我应该使用哪个 Solidity 版本？** 推荐使用 0.8.28（与 Rome Solidity SDK 匹配）。更早的版本也可使用。

**我可以使用 Hardhat 吗？Foundry 呢？** 两者都可以。请使用 Rome RPC URL 和 chain ID 配置你的网络。参见 [部署 Solidity](/zh/kai-fa-zhe-zhi-nan/deploy-solidity.md).

**我可以使用 MetaMask 吗？** 可以。在 MetaMask 中将 Rome 添加为自定义网络，并填写相应的 RPC URL 和 chain ID。参见 [快速开始](/zh/ru-men/quickstart.md).

**如何从 Solidity 调用 Solana 程序？** 使用 CPI 预编译（`0xFF...08`）通过 Rome Solidity SDK。参见 [从 EVM 调用 Solana](/zh/kai-fa-zhe-zhi-nan/call-solana-from-evm.md).

## 性能

**交易最终确定时间是多少？** 不到一秒——与 Solana 的区块时间相同（约 400 毫秒）。

**计算预算是多少？** 每笔原子交易约 140 万计算单元。超过此限制的操作将使用迭代模式（拆分为多个 Solana 交易）。参见 [计算预算](/zh/he-xin-gai-nian/compute-budget.md).

## 代币

**Rome 使用什么 gas 代币？** 每条链选择自己的 gas 代币——可以是任意 SPL 代币。RSOL（包装后的 SOL）是默认选项。自定义代币通过 Meteora 池进行定价。

**ERC-20 代币在 Rome 上如何运作？** Rome 上的 ERC-20 代币是 SPL 代币的透明包装层。 `balanceOf()` 直接从 Solana 上的 SPL 代币账户读取。参见 [Token Interop](/zh/he-xin-gai-nian/token-interop.md).

**Transfer Hooks 可以在 Rome 上使用吗？** 可以。Rome 是唯一一个 Solidity 合约可以充当 Token-2022 Transfer Hooks 的 EVM 环境。参见 [Transfer Hooks](/zh/he-xin-gai-nian/transfer-hooks.md).

## 基础设施

**我需要运行自己的节点吗？** 对于开发，请连接到 devnet RPC： `https://montispl.devnet.romeprotocol.xyz`。对于生产环境，你需要 Proxy + Hercules +（可选）OP-Geth。

**Rome 需要哪些数据库？** Hercules（区块索引）和 Proxy（单状态模式下的区块查询）使用 PostgreSQL。默认连接： `postgres://hercules:qwerty123@postgres_rome/test_rollup`.

**我可以在本地运行 Rome 吗？** 可以。 `cd rome-setup/deploy && ./start-local.sh` 会启动完整技术栈。请参阅 rome-setup README。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rome.builders/zh/zi-yuan/faq.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
