我本意是想在windows下学习下C++11,而结果是我的Visual Studio 2012不完全支持,而我又懒得去安装2013/2015,太大了。公司运维也不允许我去下载- -,然后就想能不能在windows环境下搞个gcc玩,然后我又知乎了一把,大意的意见是clang把gcc甩了好远,所以我就决定安装clang环境来学习一下,过程中还是遇了几个坑…

 

-----------------------------------------------------------------------------------------------

下载最新的clang版本,地址:http://www.llvm.org/releases/download.html#3.7.0

然后编写测试用的c代码,保存为demo1.c

#include <stdio.h>

int main(int argc, char *argv[]) {
    printf("Hello World!");        return 0;
}

使用Win + R,切换到demo1.c的目录下,然后执行clang --verbose demo1.c会遇到错误

找不到stdio.h文件,之后我在网上搜索了好久,比如这一篇文章

http://zanedp.blogspot.com/2014/01/clang-cant-find-stdioh-etc.html

我按照文章提示的步骤进行安装,最后发现遇到这样的错误:

ld.exe: unrecognised emulation mode: i386pep

Supported emulations: i386pe

 

这个问题很头疼,google出来的结果很多,却几乎没什么头绪,最后我在一个邮件列表中找到了答案

http://comments.gmane.org/gmane.comp.lib.boost.devel/262947

缺少stdio.h,下载mingw没有问题,问题是我使用的不是64位的!

然后我搜索关键字“mingw 64”,总算让我找到了答案,下载地址:http://mingw-w64.org/doku.php/download

注意CPU架构选择x86_64,原因就是clang也使用的是该架构编译的

安装成功后,查看gcc的相关信息(需要把gcc安装目录的bin加入到环境变量)

 

如果还编译不通过(我遇到了),关闭当前的dos窗口,然后重新来一遍就可以了

main.cpp的源码:

#include <iostream>
#include <vector>
 
int main()
{
  std::vector<int> vect {1, 2, 3, 4, 5};
  for(auto& el : vect)
    std::cout << " - " << el << std::endl;
 
  return 0;
}

剩下的就请同学们自己愉快的玩耍吧…

windows下clang的安装与使用的更多相关文章

  1. Windows下的Memcache安装 linux下的Memcache安装

    linux下的Memcache安装: 1. 下载 memcache的linux版本,注意 memcached 用 libevent 来作事件驱动,所以要先安装有 libevent. 官方网址:http ...

  2. Windows下的Memcache安装

    Windows下的Memcache安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memca ...

  3. Windows下 VM12虚拟机安装OS X 10.11 和VM TOOLS

    Windows下虚拟机安装Mac OS X —– VMware Workstation12安装Mac OS X 10.11 本文即将介绍WIN虚拟MAC的教程.完整详细教程(包含安装中的一些问题) [ ...

  4. coreseek实战(一):windows下coreseek的安装与测试

    coreseek实战(一):windows下coreseek的安装与测试 网上关于 coreseek 在 windows 下安装与使用的教程有很多,官方也有详细的教程,这里我也只是按着官方提供的教程详 ...

  5. Windows下Memcache的安装与在php中使用

    memcache dll插件和测试例子下载地址: http://pecl.php.net/package/memcache Windows下Memcache的安装方法 Memcached官方:http ...

  6. Windows下的Memcache安装与测试教程

    Windows下的Memcache安装 1.下载memcache for windows. 下载地址:http://splinedancer.com/memcached-win32/,推荐下载bina ...

  7. Mysql在windows下的免安装配置步骤和重新安装的步骤

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

  8. DEDECMS最新5.7版在Windows下的Memcache安装

    一,织梦后台后台设置进入系统后台,在[系统基本参数]下面的"性能选项"卡当中,关于memcache进行如下配置: cfg_memcache_enable : 是否启用memcach ...

  9. Windows下的Memcache安装:

    Windows下的Memcache安装:1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memcac ...

随机推荐

  1. Java MD5加密工具类

    public final static String MD5(String s) { char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', ' ...

  2. flash网页播放器

    http://www.52player.com/VideoPlayer/  下载

  3. UITableViewCell重用的问题

    UITableView中有两种重用Cell的方法: - (id)dequeueReusableCellWithIdentifier:(NSString *)identifier; - (id)dequ ...

  4. dom4j 学习总结

    Dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platfo ...

  5. DOS命令大全(经典收藏)

    net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user: ...

  6. rename() 是原子的么

    对一个文件做修改, 通常认为 直接 open-seek-write-write-close 不是原子的. 1. write 本身 不一定是原子的: https://blogs.msdn.microso ...

  7. Linux内核分析之跟踪分析Linux内核的启动过程

    一.实验过程 使用实验楼虚拟机打开shell cd LinuxKernel/ qemu -kernel linux-/arch/x86/boot/bzImage -initrd rootfs.img ...

  8. [1001]mod

    输入一个数,如果其是3的倍数就输出“3”,如果是2的倍数就输出“2”,都是则输出“1”,否则输出“0”: 输入输出样例: 输入: 9 输出: 3 输入: 7 输出: 0 Hint 使用一下形式的条件语 ...

  9. JAVA的初始化顺序(续)

    JAVA在创建对象之前,是先加载类,然后再创建对象. 加载类时,会加载静态的成员变量,包括父类的静态成员变量[先加载父类,再加载子类]. 一.  静态成员变量的初始化 package com.cnbl ...

  10. Cocoapods降低版本及卸载

    有的时候我们需要降低Cocoapods的版本来解决第三方库的兼容问题.   一. 移除pod组件 这条指令会告诉你Cocoapods组件装在哪里 :     1 $ which pod 你可以手动移除 ...