`
pengpeng
  • 浏览: 84134 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

linux运行程序错误

阅读更多

现象:本机安装的是Linux; 运行32位的apache;

错误提示: No such file or directory

 

解决过程: 首先我查看次二进制程序是否是unix/linux版本的:

     file filename: httpd: setuid ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped

      由此可见此程序是32位可执行linux程序;

                   第二步查看操作系统版本:uname -a: Linux ubuntu 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC 2010 x86_64 GNU/Linux

                    可见安装的内核是64位的linux;

 那么可以定位问题为32位的可执行程序不能在64位内核上运行的的问题;但是我只到64为内核是可以运行32为的程序的,可能是缺少一些32位的动态库吧。于是google了下,发现果然是缺少ia32-libs这个包;于是apt-get install ia32-lib安装这个包;

 问题解决;

 

总结: 我们知道一个可执行二进制程序文件头都是有一个魔数的,比如linux c程序的都有ELF魔数;现如今linux 环境在加载可执行程序时,可以动态根据不同的魔数,加载java,ruby,python,awk,go,等等语言的执行器来执行程序;

            同样一个技巧,有时候我们运行一个程序时会报缺少动态链接库的问题,我们先odd filename;可以知道缺少的库;

 

 

 

分享到:
评论

相关推荐

    Linux运行C#简单操作 示例程序

    本资源提供了在Linux环境下运行C#程序的详细步骤,通过实例程序“ConsoleApp1”进行讲解。 首先,我们需要理解C#在Linux上的运行环境是.NET Core。.NET Core是一个开源、跨平台的开发框架,支持Windows、macOS和...

    linux下独立程序执行php文件

    这里提到的"snail007-phprunner-0ce9948"可能是一个专为此目的编写的特定工具,允许你在不依赖系统PHP解释器的情况下运行PHP代码。下面将详细讨论如何实现这一功能以及相关的技术知识点。 首先,了解PHP的运行机制...

    LINUX程序LINUX程序LINUX程序

    在这个“LINUX程序”压缩包中,我们很可能是找到了一系列与Linux相关的程序实例,这些实例可能是源代码、可执行文件或者相关文档,用于学习和理解Linux下的编程。 首先,我们要了解Linux程序的基础。在Linux中,...

    在Linux下编译并运行C程序

    ### 在Linux下编译并运行C程序 #### 环境准备与编译器安装 在开始编写并编译C/C++程序之前,确保已经安装了必要的编译工具。Linux系统通常内置或提供了多种编译工具,其中最常用的是GCC (GNU Compiler Collection)...

    在linux下用Qt编写的一个程序

    总的来说,这个“在Linux下用Qt编写的一个程序”涉及了Qt的网络编程、图形视图、定时器和多线程等核心模块。通过合理利用这些工具,开发者可以构建出一个实时监控和展示数据变化的高效应用。在实际开发过程中,还需...

    Linux设备驱动程序设计入门

    Linux 设备驱动程序设计的模块需要包含模块初始化和模块卸载函数,前者在 insmod 的时候运行,后者在 rmmod 的时候运行。初始化与卸载函数必须在宏 module_init 和 module_exit 使用前定义,否则会出现编译错误。 6...

    Wine使用者指南,linux下运行windows程序

    ### Wine使用者指南:深入探索Linux下运行Windows程序 #### 概览与目的 Wine,一个开创性的软件,旨在让Linux用户能够在不依赖Windows操作系统的情况下,执行原生的Windows应用程序和游戏。它通过提供Windows API...

    linux 下的c程序

    4. **运行程序**: 执行生成的可执行文件,如`./lottery`。 二、链表数据结构 链表是一种线性数据结构,每个元素(节点)包含数据和指向下一个元素的指针。在C语言中,链表的实现涉及以下概念: 1. **节点定义**: ...

    linux深入详解程序源码

    在Linux下,Makefile用于自动化编译、链接等构建过程。学习如何编写Makefile,理解规则、依赖关系和目标,能帮助我们更有效地管理和构建项目。 七、版本控制工具 源码通常在版本控制系统如Git中进行管理。掌握Git的...

    Linux下的段错误Segmentationfault产生的原因及调试方法经典.pdf

    "Linux下的段错误Segmentationfault产生的原因及调试方法经典" 在 Linux 系统中,段错误(Segmentation fault)是一种常见的错误,它是指访问了错误的内存段,或者访问了没有权限的内存区域,或者根本不存在对应的...

    linux环境c程序设计源代码

    9. **编译与链接**:在Linux下,通常使用`gcc`或`g++`编译器进行源代码编译,`make`工具则可以帮助组织和自动化编译过程。 10. **调试技巧**:学会使用`gdb`调试器来跟踪程序执行,设置断点,查看变量值,单步执行...

    Linux后台运行py服务程序1

    在Linux系统中,后台运行服务程序是常见的需求,特别是对于长时间运行的任务,如Python脚本。在标题和描述中提到的“&”符号和“nohup”命令就是实现这一目标的关键工具。下面我们将深入探讨如何使用这些命令以及...

    Qt程序在linux下发布

    Qt 程序在 Linux 下发布 在 Linux 平台下发布 Qt 应用程序需要注意到动态链接库的管理。通过运行 ldd 命令可以查看应用程序依赖的动态链接库,然后复制缺失的动态库到应用程序目录下,并建立软链接实现应用程序与...

    LINUX程序设计

    Linux是多用户、多任务的操作系统,它的内核提供了丰富的系统调用来支持程序的运行。 2. **Shell编程**:Linux中的Shell是用户与系统交互的主要接口,也是编写脚本程序的重要工具。学习Bash Shell语法,包括变量、...

    Linux下的段错误产生的原因及调试方法

    ### Linux下的段错误产生的原因及调试方法 #### 概述 段错误,即`Segmentation fault`,是在程序运行过程中由于非法访问内存所引发的一种错误。这种错误在Linux环境下非常常见,尤其对于使用C/C++这类需要手动管理...

    Linux下发生段错误时如何产生core文件

    在没有设置core dump大小限制的情况下,运行程序不会生成core文件。但当执行`ulimit -c unlimited`设置无限制的core文件大小后,再次运行程序,就会产生一个core dump文件,可以用于后续分析。 为了分析core dump...

    Linux C程序设计大全

    10. **Makefile与编译构建**:在Linux下,通常使用Makefile来组织和自动化编译过程。书中会介绍Makefile的规则、目标和依赖关系,以及如何优化编译过程。 通过深入学习《Linux C程序设计大全》,你将能够编写出能在...

    Linux系统程序设计基础

    在Linux下编写程序,程序员可以直接与操作系统内核进行交互,实现更底层的功能控制。C语言则是与操作系统接口最直接的语言之一,它的语法简洁、高效,是系统编程的首选语言。 课程内容可能涵盖以下几个关键知识点:...

    嵌入式Linux应用程序开发标准教程(第2版全)

    2.4.1 在Linux下解压常见软件 2.4.2 定制Linux系统服务 2.5 本章小结 2.6 思考与练习 第3章 Linux下C编程基础 3.1 Linux下C语言编程概述 3.1.1 C语言简单回顾 3.1.2 Linux下C语言编程环境概述 3.2 常用编辑器 3.2.1...

Global site tag (gtag.js) - Google Analytics