• c – 如何告诉CMake在Windows上使用Clang?

    我有一个使用CMake构建的C项目.我通常在OSX上构建,但现在我正在尝试使用 Windows版本.出于兼容性原因,我想在Windows上使用Clang.

    我从LLVM安装了预编译的Clang 3.8二进制文件:

    C:\Program Files\LLVM\bin\clang.exe
    C:\Program Files\LLVM\bin\clang++.exe

    它也安装在我的PATH上:

    >clang++
    clang++.exe: error: no input files

    我有两个问题:

    >当我打电话给cmake –build时,如何告诉CMake使用clang?
    >如何在构建CMake配置的编译器之前检查?

    除了Clang编译器本身之外,您还需要一个适用于Windows的构建/链接环境.

    最新的CMake 3.6版本在Windows上有几个集成支持的Clang构建环境(例如Visual Studio,Cygwin;见Release Notes).

    我刚刚用一个成功的测试

    > LLVM-3.9.0-r273898-win32.exehttp://llvm.org/builds/
    > cmake-3.6.0-rc4-win64-x64.msihttps://cmake.org/download/
    > Microsoft VS2015 Community Edition版本14.0.23107.0

    全部安装到其标准路径,其bin目录位于全局PATH环境中.

    您需要知道的部分是使用CMake -T“LLVM-vs2014”命令行选项设置正确的工具集.在配置过程中,CMake会告诉您它找到/采用的编译器.

    的CMakeLists.txt

    cmake_minimum_required(VERSION 3.6)
    
    project(HelloWorld)
    
    file(
        WRITE main.cpp 
            "#include <iostream>\n"
            "int main() { std::cout << \"Hello World!\" << std::endl; return 0; }"
    )
    add_executable(${PROJECT_NAME} main.cpp)

    Windows控制台

    ...> mkdir VS2015
    ...> cd VS2015
    ...\VS2015> cmake -G"Visual Studio 14 2015" -T"LLVM-vs2014" ..
    -- The C compiler identification is Clang 3.9.0
    -- The CXX compiler identification is Clang 3.9.0
    -- Check for working C compiler: C:/Program Files (x86)/LLVM/msbuild-bin/cl.exe
    -- Check for working C compiler: C:/Program Files (x86)/LLVM/msbuild-bin/cl.exe -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Check for working CXX compiler: C:/Program Files (x86)/LLVM/msbuild-bin/cl.exe
    -- Check for working CXX compiler: C:/Program Files (x86)/LLVM/msbuild-bin/cl.exe -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Configuring done
    -- Generating done
    -- Build files have been written to: .../VS2015
    ...\VS2015> cmake --build . 
    Microsoft (R)-Buildmodul, Version 14.0.23107.0
    [...]
    ...\VS2015> Debug\HelloWorld.exe
    Hello World!

    安装提示

    请注意,我在设置过程中已将LLVM添加到搜索路径中:

    LLVM Installation with Add to PATH

    您可以在任何VS项目的属性页面中交叉检查可用的“平台工具集”:

    VS Project Properties - Platform Toolsets

    参考

    > What is the -D define to tell Cmake where to find nmake?
    > Linker for Clang?
    > Switching between GCC and Clang/LLVM using CMake

    相关文章
    相关标签/搜索
    最准网站特马资料四肖期期准一2020特马开奖结果查询三肖中特期期准免费118图库 虎林市| 四子王旗| 铜梁县| 阳泉市| 霍邱县| 枝江市| 清丰县| 辉南县| 湘乡市| 浦县| 金溪县| 淮北市| 夹江县| 北宁市| 桦川县| 思茅市| 南部县| 子长县| 易门县| 郁南县| 镇沅| 镇远县| 舞阳县| 阳高县| 利津县| 左权县| 石棉县| 乌审旗| 东明县| 桐梓县| 天峻县| 长治县| 聂拉木县| 绍兴市| 蚌埠市| 两当县| 子长县| 防城港市| 敦化市| 高陵县| 平阴县| 思茅市| 肃南| 东源县| 佛坪县| 高淳县| 新乐市| 互助| 阿瓦提县| 扎兰屯市| 泰来县| 阿克陶县| 龙胜| 肃南| 河曲县| 南木林县| 永春县| 南阳市| 修文县| 合江县| 儋州市| 邵阳县| 沁水县| 镇雄县| 绥棱县| 中方县| 淮北市| 扎囊县| 闵行区| 浏阳市| 金堂县| 博客| 东安县| 德阳市| 南昌县| 婺源县| 莫力| 会泽县| 镇平县| 城市| 贞丰县| 平顶山市| 巴中市| 芷江| 桐乡市| 大庆市| 抚远县| 朔州市| 海丰县| 乌审旗| 张掖市| 娄底市| 西安市| 石城县| 伊通| 青川县| 石屏县| 南华县| 雅安市| 松潘县| 彭州市| 濮阳县| 扬中市| 双桥区| 和林格尔县| 岢岚县| 乐安县| 洱源县| 开化县| 广东省| 高邑县| 大庆市| 绩溪县| 海盐县| 吉水县| 金秀| 葫芦岛市| 兖州市| 安图县| 茌平县| 连云港市| 吉林省| 永丰县| 深圳市| 永德县| 天柱县| 德庆县| 开平市| 蚌埠市| 永泰县| 富源县| 舞阳县| 旬邑县| 平度市| 个旧市| 景东| 珠海市| 舟曲县| 图们市| 景德镇市| 教育| 吕梁市| 七台河市| 大姚县| 焉耆| 密云县| 从江县| 从化市| 兰坪| 华池县| 高碑店市| 阿克| 上高县| 分宜县| 巴彦淖尔市| 宣城市| 香河县| 弥勒县| 桑植县| 鄂州市| 西和县| 凤凰县| 仙游县| 九龙县| 莫力| 大荔县| 抚松县| 进贤县| 临安市| 福清市| 南昌县| 金寨县| 化隆| 三河市| 东乡族自治县| 蒙城县| 庆阳市| 巴东县| 西青区| 乐安县| 郑州市| 百色市| 璧山县| 始兴县| 永川市| 祁阳县| 阿拉善右旗| 鄢陵县| 黎城县| 思茅市| 惠州市| 历史| 伊宁市| 蛟河市| 新田县| 紫阳县| 武山县| 康马县| 渝中区| 漳浦县| 葵青区| 龙门县| 黑龙江省| 额敏县| 桂平市| 通化市| 金平| 曲水县| 皋兰县| 东至县| 乌审旗| 望江县| 闸北区| 深水埗区| 惠东县| 永州市| 嘉荫县| 伊通| 张家口市| 鄢陵县| 洛隆县| 隆尧县| 阳西县| 运城市| 平山县| 津南区| 德令哈市| 鹿邑县| 湖南省| 遂平县| 洮南市| 香格里拉县| 惠州市| 南昌市| 凤冈县| 龙井市| 改则县| 鸡泽县| 潼南县| 汉中市| 乌兰县| 镇原县| 汶川县| 六枝特区| 龙陵县| 商洛市| 沙河市| 建水县| 阜阳市| 金门县| 博乐市| 建湖县| 龙里县| 区。| 武冈市| 桃源县| 中山市| 成都市| 炉霍县| 琼海市| 霞浦县| 屯留县| 梁平县| 且末县| 池州市| 镇雄县| 神池县| 湖南省| 自治县| 芮城县| 鲜城| 荥阳市| 读书| 临颍县| 穆棱市| 平陆县| 阜宁县| 沙田区| 涟源市| 昌都县| 嘉定区| 永吉县| 随州市| 大关县| 台南县| 集贤县| 宿迁市| 汾阳市| 沙田区| 威远县| 射阳县| 文安县| 冕宁县| 姜堰市| 高唐县| 渭南市| 五寨县| 安陆市| 台东市| 江北区| 黔西| 岳池县| 北碚区| 德化县| 兰考县| 扎鲁特旗| 石景山区| 灌阳县| 潞城市| 独山县| 鄂托克前旗| 绥德县| 修水县| 紫云| 杂多县| 江都市| 沐川县| 永宁县| 枣强县| 昌宁县| 荣昌县| 淅川县| 泰来县| 静海县| 太康县| 两当县| 密云县| 仁怀市| 于田县| 长岭县| 芜湖县| 普格县| 油尖旺区| 宕昌县| 汶川县| 顺昌县| 镇沅| 屯留县| 九龙县| 泊头市| 景东| 错那县| 陆良县| 沙湾县| 太原市| 永吉县| 克山县| 万山特区| 中江县| 偃师市| 敦化市| 高清| 威海市| 探索| 馆陶县| 泰宁县| 罗平县| 易门县| 八宿县| 漾濞| 永胜县| 江孜县| 尼玛县| 龙里县| 宁远县| 山西省| 聂荣县| 广宁县| 锡林郭勒盟| 丰台区| 蒲江县| 辽阳县| 安龙县| 阿巴嘎旗| 长海县| 霍邱县| 眉山市| 麦盖提县| 浪卡子县| 忻城县| 铁力市| 酉阳| 喀喇沁旗| 赫章县| 阜南县| 芒康县| 西平县| 永和县| 浙江省| 成武县| 宜宾县| 石棉县| 色达县| 陆川县| 乐陵市| 徐州市| 正镶白旗| 苏尼特右旗| 甘泉县| 南昌县| 桐梓县| 莱州市| 加查县| 若羌县| 文登市| 茂名市| 广东省| 北川| 晋宁县| 甘孜县| 伊川县| 双江| 仙居县| 武乡县| 弥渡县| 榆树市| 景洪市| 朝阳县| 沈丘县| 灵武市| 沂水县| 宜都市| 封开县| 沙雅县| 措美县| 资中县| 江北区| 繁昌县| 麦盖提县| 施秉县| 寻乌县| 德江县| 当阳市| 阿荣旗| 南康市| 博爱县| 阳朔县| 东安县| 雅安市| 同德县| 贵德县| 台山市| 靖安县| 长兴县| 西林县| 哈尔滨市| 黄龙县| 泉州市| 元江| 张家港市| 华容县| 罗江县| 泾川县| 灯塔市| 湖北省| 麻城市| 大荔县| 平乐县| 林周县| 白河县| 县级市| 周宁县| 兴安盟| 孝昌县| 太仆寺旗| 资源县| 离岛区| 克东县| 肥城市| 淮滨县| 渝北区| 涟源市| 舞钢市| 兰溪市| 东乡族自治县| 科技| 马鞍山市| 江城| 安达市| 寻甸| 广德县| 彭山县| 衢州市| 汕头市| 台湾省| 徐水县| 鱼台县| 宣汉县| 临高县| 井研县| 拜泉县| 屏东市| 道孚县| 茂名市| 临江市| 琼海市| 武城县| 隆林| 湟中县| 临城县| 牙克石市| 柳州市| 修文县| 成都市| 开阳县| 陆良县| 靖西县| 上饶市| 仪征市| 伊吾县| 泾川县| 胶南市| 马尔康县| 柘城县| 图木舒克市| 息烽县| 华宁县| 资阳市| 富源县| 白水县| 夏河县| 威信县| 璧山县| 独山县| 沾化县| 长海县| 罗城| 长沙市| 长阳| 海淀区| 潜江市| 南木林县| 龙州县| 拜城县| 新和县| 岚皋县| 内江市| 江西省| 藁城市| 南郑县| 安阳县| 江都市| 香格里拉县| 宝丰县| 波密县| 建平县| 奉新县| 平乐县| 达孜县| 盐山县| 长海县| 菏泽市| 镇平县| 永丰县| 衡阳县| 平顶山市| 梁山县| 峨边| 威海市| 北宁市| 资阳市| 拜泉县| 十堰市| 台东市| 三门县| 电白县| 涪陵区| 潞西市| 金阳县| 荆门市| 宁波市| 界首市| 饶河县| 灵丘县| 乐至县| 顺昌县| 灵台县| 顺昌县| 白玉县| 高阳县| 将乐县| 井研县| 洛南县| 许昌市| 潜江市| 浠水县| 安阳市| 罗江县| 云梦县| 浦东新区| 望奎县| 芮城县| 灵山县| 广平县| 东兰县| 隆林| 滨州市| 西安市| 杭州市| 烟台市| 兴国县| 宝丰县| 饶河县| 大兴区| 巨鹿县| 台湾省| 陆川县| 揭东县| 乌审旗| 都昌县| 乡城县| 忻州市| 利津县| 曲松县| 乐清市| http://www.jx1870flightv.fun http://www.hz0j0r9vo.fun http://wap.jx1870institutev.fun http://wap.jx1870expandv.fun http://m.jx1870filev.fun http://www.jx1870hitv.fun http://wap.jx1870fatherv.fun http://www.jx1870labelv.fun http://wap.jx1870fairv.fun http://www.hz0j2r9vo.fun http://wap.hz0j4r8vo.fun http://wap.jx1870huzorv.fun http://jx1870googlev.fun http://jx1870izagev.fun http://m.jx1870hirev.fun http://www.hz0j0r8vo.fun http://jx1870existv.fun http://www.jx1870explainv.fun