linux命令file with debug_info
时间: 2024-02-02 10:04:44 浏览: 30
"file with debug_info"通常是指在Linux系统中编译生成的可执行文件或库文件,在编译时加入了调试信息(debug_info),以便于在程序出现问题时进行调试。
在Linux系统中,可以使用"file"命令查看文件类型和属性。当使用"file"命令检查一个可执行文件或库文件时,如果该文件包含调试信息,则会显示"file with debug_info"的信息。例如,可以使用如下命令查看一个可执行文件的信息:
```
file ./executable_file
```
命令执行后,如果该文件包含调试信息,则会显示类似如下的信息:
```
./executable_file: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=05a57a5a65a5e6b5e2f0a68c5ac6c2f1d54d5d9f, with debug_info, not stripped
```
其中的"with debug_info"表明该可执行文件包含调试信息。
相关问题
ledtest: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=a0dd283b33bd743d5b239f48a26183d3c60ac4c4, for GNU/Linux 3.2.0, with debug_info, not stripped重新编译后,是否是可执行文件
根据你提供的信息,重新编译后的ledtest文件类型是共享对象文件,而不是可执行文件。共享对象文件一般是共享库或动态链接库,而不是可执行文件。你需要检查编译命令是否正确,是否生成了可执行文件。
在编译时,需要使用-g选项生成调试信息,使用-o选项指定输出文件名,例如:
```
arm-linux-gnueabi-gcc -g -o ledtest ledtest.c
```
如果编译成功,会在当前目录下生成一个名为ledtest的可执行文件。使用命令file ledtest可以查看文件类型,应该显示为“ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, not stripped”等信息。
如果重新编译后仍然无法生成可执行文件,可以检查gcc版本和交叉编译工具链是否正确,并检查编译选项是否正确。
解释一下这个报错:# A fatal error has been detected by the Java Runtime Environment: # # SIGBUS (0x7) at pc=0x00007f36fadb534d, pid=4045220, tid=0x00007f354a1b7700 # # JRE version: OpenJDK Runtime Environment (8.0_222-b10) (build 1.8.0_222-b10) # Java VM: OpenJDK 64-Bit Server VM (25.222-b10 mixed mode linux-amd64 compressed oops) # Problematic frame: # C [libzip.so+0x1234d] newEntry.isra.4+0x7d # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /GSCloud2103/hs_err_pid4045220.log Compiled method (nm) 4791771 742 n 0 java.util.zip.ZipFile::getEntry (native) total in heap [0x00007f36e52edd90,0x00007f36e52ee100] = 880 relocation [0x00007f36e52edeb8,0x00007f36e52edf00] = 72 main code [0x00007f36e52edf00,0x00007f36e52ee100] = 512 /GSCloud2103/./startup-linux.sh: line 78: 4045220 Segmentation fault (core dumped) $JAVA_HOME/bin/java $CAF_OPS -server -Dloader.path=$CAF_MODULE_PATHS -Dserver.runtime.path.name=$IGIX_SERVER_PATH $JVM_MEM_OPTS $JVM_DEBUG_OPTS -jar $CAF_BOOTSTRAP --spring.config.location=$IGIX_SERVER_HOME/runtime/
这是一个严重的错误报告,出现了SIGBUS错误,可能是由于硬件或内存故障引起的。报告中提到了一个问题帧,这是指程序崩溃的位置,即C语言的libzip库中的newEntry.isra.4+0x7d方法。此外,还有一个“Segmentation fault (core dumped)”错误,这是指进程试图访问其无法访问的内存区域,导致操作系统终止了该进程并生成了一个核心转储文件。如果这是一个持续发生的问题,建议检查硬件和内存,或者查看是否有最新的库或更新可用。