You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Simics 6.0.185环境中正确重编译instrumentation-tracer-tool扩展

重编译Simics-Base instrumentation-tracer-tool扩展的正确步骤

针对Ubuntu 20.04 + Simics 6.0.185环境,按以下步骤操作:

  1. 加载Simics环境变量
    先执行Simics安装目录下的环境初始化脚本,确保编译所需的路径、变量都正确设置:

    source /path/to/your/simics-install/bin/setup-env.sh
    

    替换/path/to/your/simics-install为实际的Simics安装路径。

  2. 进入扩展源码目录
    找到Simics-Base包内的instrumentation-tracer-tool源码目录,通常路径类似:

    cd /path/to/simics-base/src/instrumentation-tracer-tool
    

    替换/path/to/simics-base为Simics-Base包的实际路径(一般在Simics安装目录的packages/simics-base下)。

  3. 清理旧编译产物
    先清理之前的编译文件,避免残留影响:

    make clean
    
  4. 编译目标平台模块
    直接调用make并指定目标平台为linux64(对应Ubuntu 64位环境):

    make linux64
    

    这个Makefile里的$(MODULE_MAKEFILE)是Simics内置的模块编译模板,环境变量加载正确的话会自动指向Simics提供的标准编译配置,无需手动指定。

  5. 替换或加载编译后的模块

    • 编译完成后,产物会生成在当前目录的linux64/lib下,即instrumentation-tracer-tool.so。
    • 不要直接手动替换Simics-Base包原有linux64/lib下的文件(容易出现权限或版本匹配问题),推荐用以下两种方式加载:
      1. 临时加载(用于测试):启动Simics时,通过命令行添加模块路径:
        simics -module-path /path/to/instrumentation-tracer-tool/linux64/lib
        
        进入Simics后直接加载模块:load-module instrumentation-tracer-tool
      2. 永久替换(需注意权限):如果确认编译正常,将编译后的.so文件复制到Simics-Base包的对应目录:
        sudo cp linux64/lib/instrumentation-tracer-tool.so /path/to/simics-base/linux64/lib/
        
        替换路径为实际的Simics-Base包linux64/lib路径。
  6. 验证编译结果
    启动Simics并加载模块,检查是否报错:

    simics -batch -command 'load-module instrumentation-tracer-tool; quit'
    

    如果没有报错,说明编译成功。

常见问题说明

  • 执行make时提示找不到$(MODULE_MAKEFILE):检查是否正确加载了Simics的setup-env.sh脚本,该脚本会自动设置MODULE_MAKEFILE变量指向Simics的标准模块编译文件。
  • 手动替换后加载报错:大概率是编译产物与原有模块的依赖或版本不匹配,用make编译时会自动使用Simics的编译链和依赖库,避免这类问题。
  • create-modcache/create-package无效:因为该扩展是Simics-Base包的内置模块,并非独立包,这两个命令仅适用于带有packageinfo的独立扩展包,所以直接用make编译即可。

内容的提问来源于stack exchange,提问作者guydeloimba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:12:41