-o0优化编译报错(.fini+0x0): _fini 的多重定义

2023-10-29 21:12

本文主要是介绍-o0优化编译报错(.fini+0x0): _fini 的多重定义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

gcc -g -o0 ./UseGoogleCoredumper -lcoredumper ./UseGoogleCoredumper.c -std=c99执行后报错

./UseGoogleCoredumper:在函数‘_fini’中:
(.fini+0x0): _fini 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/crti.o:(.fini+0x0):第一次在此定义
./UseGoogleCoredumper:在函数‘data_start’中:
(.data+0x0): __data_start 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/crt1.o:(.data+0x0):第一次在此定义
./UseGoogleCoredumper:(.rodata+0x8): __dso_handle 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtbegin.o:(.rodata+0x0):第一次在此定义
./UseGoogleCoredumper:(.rodata+0x0): _IO_stdin_used 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/crt1.o:(.rodata.cst4+0x0):第一次在此定义
./UseGoogleCoredumper:在函数‘_start’中:
(.text+0x0): _start 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/crt1.o:(.text+0x0):第一次在此定义
./UseGoogleCoredumper:在函数‘_init’中:
(.init+0x0): _init 的多重定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/crti.o:(.init+0x0):第一次在此定义
/tmp/ccUj5JTy.o:在函数‘sig_func’中:
/root/code/./UseGoogleCoredumper.c:8: sig_func 的多重定义
./UseGoogleCoredumper:/root/code/./UseGoogleCoredumper.c:8:第一次在此定义
/tmp/ccUj5JTy.o:在函数‘MakeSignal’中:
/root/code/./UseGoogleCoredumper.c:19: MakeSignal 的多重定义
./UseGoogleCoredumper:/root/code/./UseGoogleCoredumper.c:19:第一次在此定义
/tmp/ccUj5JTy.o:在函数‘main’中:
/root/code/./UseGoogleCoredumper.c:28: main 的多重定义
./UseGoogleCoredumper:/root/code/./UseGoogleCoredumper.c:28:第一次在此定义
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/crtend.o:(.tm_clone_table+0x0): __TMC_END__ 的多重定义
./UseGoogleCoredumper:(.data+0x8):第一次在此定义
/usr/bin/ld: error in ./UseGoogleCoredumper(.eh_frame); no .eh_frame_hdr table will be created.
collect2: 错误:ld 返回 1

原因是缺失-o,变成下面这样可以成功

gcc -g -o0 -o ./UseGoogleCoredumper -lcoredumper ./UseGoogleCoredumper.c -std=c99

这篇关于-o0优化编译报错(.fini+0x0): _fini 的多重定义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/303391

相关文章

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

解决Java异常报错:java.nio.channels.UnresolvedAddressException问题

《解决Java异常报错:java.nio.channels.UnresolvedAddressException问题》:本文主要介绍解决Java异常报错:java.nio.channels.Unr... 目录异常含义可能出现的场景1. 错误的 IP 地址格式2. DNS 解析失败3. 未初始化的地址对象解决

Python报错ModuleNotFoundError的10种解决方案

《Python报错ModuleNotFoundError的10种解决方案》在Python开发中,ModuleNotFoundError是最常见的运行时错误之一,通常由模块路径配置错误、依赖缺失或命名冲... 目录一、常见错误场景与原因分析二、10种解决方案与代码示例1. 检查并安装缺失模块2. 动态添加模块

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据

MySQL中like模糊查询的优化方案

《MySQL中like模糊查询的优化方案》在MySQL中,like模糊查询是一种常用的查询方式,但在某些情况下可能会导致性能问题,本文将介绍八种优化MySQL中like模糊查询的方法,需要的朋友可以参... 目录1. 避免以通配符开头的查询2. 使用全文索引(Full-text Index)3. 使用前缀索

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

C#实现高性能Excel百万数据导出优化实战指南

《C#实现高性能Excel百万数据导出优化实战指南》在日常工作中,Excel数据导出是一个常见的需求,然而,当数据量较大时,性能和内存问题往往会成为限制导出效率的瓶颈,下面我们看看C#如何结合EPPl... 目录一、技术方案核心对比二、各方案选型建议三、性能对比数据四、核心代码实现1. MiniExcel

Python多重继承慎用的地方

《Python多重继承慎用的地方》多重继承也可能导致一些问题,本文主要介绍了Python多重继承慎用的地方,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录前言多重继承要慎用Mixin模式最后前言在python中,多重继承是一种强大的功能,它允许一个