zoukankan      html  css  js  c++  java
  • 关于gcc on windows的“拒绝访问”问题

                                         关于gcc on windows的“拒绝访问”问题

                                                         周银辉 

    装了个GCC on Windows,本想可以爽一把,但不料:

     

    打开gcc所在目录,发现gcc.exe只有56个字节,咦,太小了吧,什么东东哦,用ultraEdit打开:
     

    注意到了吗?这是一个“symlink” (符号链接,linux下链接的一种,还有一种是硬链接,这里你可以把符号链接简单地理解为windows下的“快捷方式”),呵呵,windows怎么可能认识符号链接这种高级货。
    并且我们注意到这个符号链接是指向etc/alternatives/下的,说明其肯定是为了兼容多个版本的gcc而搞的这么个符号链接。
    在gcc.exe所在的目录下,发现了两个shell脚本(set-gcc-default-3.sh和set-gcc-default-4.sh),更是证明了这个观点啊,打开set-gcc-default-4.sh瞧瞧:

    #!/bin/bash

    # We only switch the alternatives that exist for both compilers;
    #
     gdc, gpc, g77 and gfortran never get switched.

    for x in gcc g++ gcj gnat ; do
      
    /usr/sbin/alternatives --set $x /usr/bin/$x-4.exe
    done
    なるほど ~~~

    看到了吗,gcc, g++, gcj,  gnat 都被映射到了对应的XXX-4版本

    所以,解决方案就很容易得到啦:
    1, 删掉 gcc.exe, g++.exe, gcj.exe, gnat.exe 这四个东东,要着也没用,windows不认识

    2, 在相同目录下,选择你所需要的gcc,g++, gcj, gnat版本,我这里选择xxx-4版(其实我电脑上根本就没-3版),所以我选中gcc-4.exe, g++-4.exe, gcj-4.exe, gnat-4.exe, 复制他们得到各个副本,并将副本重命名为gcc.exe, g++.exe, gcj.exe, gnat.exe

    3, 如果你电脑上有多个版本,并且某个时候又想切换到其他版本上去,那么goto step 1 

    注意:gcj和gnat不一定存在于你的电脑中,没有的话,略过即可,其他的诸如abc.exe拒绝访问的话,同理咯...

    问题搞定:

     

  • 相关阅读:
    JMeter使用正则表达式提取相应信息
    Python的configparser生成配置文件,以及相关操作
    Python函数主要的作用
    Python函数传参位置关系总结
    Python中的作用域
    Python高阶函数解析
    Python中set集合的增加,update和add的区别
    Oracle 11g服务详细介绍及哪些服务是必须开启的?
    javacc jjtree 写法 以及 jj写法 基本语法 以及应用
    Python 3.3 try catch所有的错误Error,不包括Exception。关键在于 sys.exc_info()
  • 原文地址:https://www.cnblogs.com/zhouyinhui/p/1760773.html
Copyright © 2011-2022 走看看