当前位置: 首页 > news >正文

riscv将全局变量固定到指定的地址

最近在工作中遇到一个场景,需要将rom中的某些静态(static)全局变量的符号导出并且在flash上使用。

首先就是确保这些rom中的静态全局变量导出到rom.elf文件中。通过riscv的nm工具可以看到rom.elf文件中这些静态全局变量的类型是b或s。小b和小s类型想在flash中的文件中通过extern符号去声明时发现编译器找不到这些rom中的静态全局变量。

经过百度之后发现可以通过riscv的ld工具--defsym选项将rom中静态全局变量固定到rom中的地址上,然后flash中去extern就可以访问了。

例如:rom中定义的test.c文件中定义了如下静态全局变量

static int g_test_val; // 该变量在rom.elf文件中地址是0x22000;

flash中想要使用这个变量:

extern int g_test_val;

flash上编译的时候在riscv的ld工具链接时添加如下选项即可:

ld --defsym g_test_val=0x22000;  //此处省略了其他链接选项

如果是使用gcc链接则需要如下选项:

gcc -Wl, --defsym g_test_val=0x22000;  //此处省略了其他链接和编译选项

http://www.dtcms.com/a/479796.html

相关文章:

  • 设计公司是建筑企业吗seo一个空间建多个网站
  • seo整站优化哪家好桂林做网站电话号码
  • 网站不备案黑龙江省特种证查询
  • 网站设计交流网站关键词优化代理
  • 【Linux在环境安装】SpringBoot应用环境安装(一)-JDK安装
  • 网站后台上传图片不显示高新建设网站电话
  • 一台服务器可以建设几个网站wordpress返回
  • 苏宁网站开发人员工资用dw做网站的视频
  • Android Jetpack 系列(七)App Startup 启动优化
  • 网站建设的收费网站建设优化开发公司
  • 【代码收藏夹·Python】使用paho连接MQTT
  • 怎么把网站排名优化秦皇岛网站建设
  • 百度推广登录平台登录泊头 网站优化
  • JS - 数据类型
  • 站长之家新网址网络营销外包有限公司
  • 未来之窗昭和仙君(十六)网页数字动画函数——东方仙盟筑基期
  • 新手怎么学习网站建设网站建设横幅
  • 怎样做简单公司网站ip代理提取网站源码
  • 【Python】从 MP4 文件中提取中英双语字幕并生成双语字幕文件(如 .srt)
  • 基于ffmpeg库,在AGX上编译jetsonFFmpeg库带有硬件加速的h264_nvmpi视频编解码器
  • wordpress熊掌号自动提交seo如何使用wordpress优化
  • 网站维护费一般多少钱湖南好搜网站建设
  • 机器人软件开发和网站开发wordpress后台登录
  • 3d演示中国空间站建造历程牡丹江建站
  • 服务器网站管理系统泰山信息科技有限公司
  • 网站备案是域名备案还是服务器备案长沙房价一览表
  • 行业网站名称广州公司网站托管
  • wordpress站点地址写错网页设计师考试报名
  • 保定涿州网站建设网站开发人员的工作
  • [Qlib] 数据处理`DataHandlerLP` | `Alpha158`