`
fantaxy025025
  • 浏览: 1311596 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

分析cygwin下报“无法定位程序输入点”的错误--终极解决方法

 
阅读更多

=

=

=

 

cygwin1.dll出错或丢失怎么办?

分析cygwin下报“无法定位程序输入点”的错误?

readline.dll错误?

 

 

终极解决方法:

找到cygwin下的bin目录,找到报错的dll文件名,比如cygwin1.dll报错,那么下面有一个对应的cygwin1.dll.new文件。

备份一下原来的,把xxx.dll.new改成xxx.dll,就好了。

 

为什么这样?

因为安装过程报错了,没有改过来。

或者本来第10步换的,结果第5步错了,那么第10步就没有执行。

具体先不深究了,大概推理如此。

 

 

下文的解决方法是有问题的,也很麻烦。

========================================

http://blog.sina.com.cn/s/blog_4c31626a010008rn.html

现象:
 
    之前网上下了一个cygwin的本地安装版本,装了一些常用的命令行工具集。结果执行最为常用的ls命令时总是报如下的错误:“无法定位程序输入点 strtoumax 于动态链接库 cygwin1.dll 上”。地球人都知道,unix下不能使用ls命令,尘世间最痛苦的事莫过于此啦~
 
原因:
 
    在网上搜了一下,看到关于cygwin的介绍:
 
    “cygwin的工作机制:cygnus当初首先把gcc,gdb,gas等开发工具进行了改进,使他们能够生成并解释win32的目标文件。然后,他们要把这些工具移植到windows平台上去。一种方案是基于win32 api对这些工具的源代码进行大幅修改,这样做显然需要大量工作。因此,他们采取了一种不同的方法——他们写了一个共享库(就是cygwin dll),把win32 api中没有的unix风格的调用(如fork,spawn,signals,select,sockets等)封装在里面,也就是说,他们基于 win32 api写了一个unix系统库的模拟层。这样,只要把这些工具的源代码和这个共享库连接到一起,就可以使用unix主机上的交*编译器来生成可以在 windows平台上运行的工具集。以这些移植到windows平台上的开发工具为基础,cygnus又逐步把其他的工具(几乎不需要对源代码进行修改,只需要修改他们的配置脚本)软件移植到windows上来。这样,在windows平台上运行bash和开发工具、用户工具,感觉好像在unix上工作。”
 
    从上面的文字了解到,前面报错的动态链接库cygwin1.dll实质就是一个操作系统的接口适配层,所报的错误应该是在该库中没有找到被ls命令调用的接口函数strtoumax。因此,造成该错误的原因极有可能是该动态库版本与所用的ls命令不匹配。
 
解决:
 
    分析出原因,解决的方法就再简单不过啦。从网上下载新的cygwin1.dll。和本地安装的比较一下文件版本号:原来的版本号是1005.15.0.0,新下载的版本号是1005.18.0.0。再用Dependency Walker看一下新下载的dll导出的接口,果然有strtoumax。使用新dll替换原来bin目录下的dll,问题就解决啦^_^

 

 

 

 

 

=

=

=

 

分享到:
评论

相关推荐

    cygwin下如何建立arm-linux-gcc

    cygwin下如何建立arm-linux-gcc,非常好,拥有很强的借鉴意义

    NCL_NCARG-6.5.0-CYGWIN_NT-10.0-WOW_i686.tar.gz

    《NCL_NCARG在Cygwin环境下的安装与使用详解》 NCL(NCAR Command Language)是一款由美国国家大气研究中心(NCAR)开发的强大数据可视化和处理语言,广泛应用于气象、气候、环境科学等领域。NCL NCARG是NCL的一个...

    x86_64-linux-gcc-4.8.4 Cygwin版

    Cygwin下的x86_64-linux-gcc交叉编译工具,版本:4.8.4。此工具可在Cygwin下生成目标平台为X64的Linux程序。

    cygwin下的arm-linux-gcc

    **标题:“cygwin下的arm-linux-gcc”** 在Windows操作系统上进行Linux ARM平台的软件开发,通常需要一个交叉编译环境。`cygwin`是一个在Windows上模拟类UNIX环境的开源工具集,它提供了许多Linux命令行工具和开发...

    cygwin-1.7.20-1本地下载

    Cygwin是一个在Windows操作系统上模拟Linux环境的开源工具集,它使得开发者可以在Windows系统上运行许多原本只能在Unix或Linux环境下执行的程序。标题"cygwin-1.7.20-1本地下载"指的是一个特定版本的Cygwin——...

    cygwin-x86-64安装包

    cygwin-x86-64安装包

    cygwin-1.1.8-2-src

    Cygwin的核心功能在于提供了一个API层,将Windows API映射到POSIX(Portable Operating System Interface)标准,使得Linux或Unix下的应用程序可以在Windows上编译和运行。这包括了对系统调用、库函数和命令行工具的...

    cygwin安装方法.pdf

    ### Cygwin安装方法 #### 一、引言 Cygwin是一款强大的工具包,它为Windows环境提供了类UNIX的功能和服务。通过Cygwin,用户可以在Windows系统上运行原本为Linux或类UNIX操作系统设计的应用程序。本文档将详细介绍...

    龙芯1B EJTAG在windows环境下的下载工具,ejtag-debug-cygwin-v3.8.2.rar

    总的来说,龙芯1B EJTAG在Windows环境下的下载工具ejtag-debug-cygwin-v3.8.2为开发者提供了方便的调试环境,通过熟练掌握其使用方法,可以高效地进行程序调试和更新,这对于龙芯1B的开发和优化工作至关重要。...

    ejtag-debug-cygwin-v3.8.2.rar

    本文将详细介绍EJTAG、ejtag-debug-cygwin工具及其在龙芯1B应用中的关键知识点。 1. EJTAG技术: EJTAG,即嵌入式JTAG(Joint Test Action Group),是一种广泛应用于嵌入式系统的调试和测试技术。它扩展了标准的...

    Cygwin-setup-x86_64

    Cygwin是一个在Windows操作系统上运行的开源软件项目,它提供了一个类Unix的环境,使得开发者可以在Windows上使用类似于Linux或Unix的命令行工具、编译器和其他应用程序。"Cygwin-setup-x86_64"是Cygwin的安装程序,...

    cygwin-1.7.5-1

    安装完成后,可以在Windows的命令提示符或Cygwin提供的bash shell下,使用类似于Linux的命令来操作文件、编译程序、运行服务等。 总的来说,Cygwin是Windows用户进入开源世界的一个桥梁,它为开发者和爱好者提供了...

    cygwin-gcc-6.3.0-python-5

    cygwin离线安装包

    cygwin 下 rsync-3.0.8安装及使用说明

    在IT领域,尤其是在Windows系统上进行Linux环境模拟时,Cygwin是一个不可或缺的工具。它提供了一个GNU/Linux命令行环境,使用户可以在Windows系统上运行许多Linux命令和工具。Rsync是另一个非常重要的工具,它用于...

    Cygwin错误调试

    Cygwin是一个在Windows操作系统上模拟Linux环境的开源工具集,它允许用户在Windows上运行许多原本只能在Unix或Linux环境下执行的程序。Cygwin提供了POSIX API,使得开发者可以编写跨平台的代码,而无需修改。然而,...

    cygwin的安装程序

    某些依赖于硬件级别的Linux程序(如设备驱动)在Cygwin中无法运行。此外,由于Cygwin是在Windows之上运行的,因此可能会受到Windows安全性和性能的影响。 总的来说,Cygwin是Windows用户向Linux环境过渡的一个重要...

    cygwin下的apt-cyg工具

    这是cygwin下类似于apt-get的官方工具,安装方法: chmod +x apt-cyg mv apt-cyg /usr/local/bin 使用方法: apt-cyg install vim apt-cyg find php

    Cygwin-setup-offline-1.7.15安装包

    总结起来,Cygwin-setup-offline-1.7.15是一个为Windows用户提供Linux环境的解决方案,它通过一个离线安装程序让用户能够在无网络连接的情况下安装和更新Cygwin及其软件包。这个工具对于开发者、系统管理员和喜欢在...

    cygwin apt-cyg

    **cygwin apt-cyg 知识点详解** Cygwin是一个在Windows操作系统上模拟Linux环境的开源工具集。它提供了Linux系统调用接口的模拟层,使得许多为Linux编写的开源软件可以在Windows上运行。而`apt-cyg`则是Cygwin中一...

Global site tag (gtag.js) - Google Analytics