zoukankan      html  css  js  c++  java
  • 如何在linux 32位机器编译64位程序

    编译64位程序,不一定要编译机器是64位的,但是32位机器默认安装的gcc编译环境还是不能用来编译64位程序。

    编译64位程序,需要加上-m64编译器参数,默认安装的gcc已经支持该参数,但是缺少64位机器指令相关的文件,所以不能编译,会出现下面的错误

    [plain] view plain copy
     
    1. In file included from /usr/include/features.h:378,  
    2.                  from /usr/include/assert.h:37,  
    3.                  from ../../../include/tinyxml/tinystr.h:42,  
    4.                  from ../../../src/tinyxml/tinystr.cpp:32:  
    5. /usr/include/gnu/stubs.h:9:27: error: gnu/stubs-64.h: 没有那个文件或目录  

    这时候需要安装 gcc所有支持文件 sudo apt-get install gcc-multilib

    [plain] view plain copy
     
    1. 将会安装下列额外的软件包:  
    2.   cpp-4.4 g++-4.4 gcc-4.4 gcc-4.4-base gcc-4.4-multilib lib64gcc1 lib64gomp1 libc6-amd64 libc6-dev-amd64 libgcc1 libgomp1  
    3.   libstdc++6 libstdc++6-4.4-dev  
    4. 建议安装的软件包:  
    5.   gcc-4.4-locales g++-4.4-multilib gcc-4.4-doc libstdc++6-4.4-dbg libmudflap0-4.4-dev libgcc1-dbg libgomp1-dbg libmudflap0-dbg  
    6.   libcloog-ppl0 libppl-c2 libppl7 lib64mudflap0 libstdc++6-4.4-doc  
    7. 下列【新】软件包将被安装:  
    8.   gcc-4.4-multilib gcc-multilib lib64gcc1 lib64gomp1 libc6-amd64 libc6-dev-amd64  
    9. 下列软件包将被升级:  
    10.   cpp-4.4 g++-4.4 gcc-4.4 gcc-4.4-base libgcc1 libgomp1 libstdc++6 libstdc++6-4.4-dev  
  • 相关阅读:
    软件开发过程须贯彻评估和测试
    【灌水】多维成功论
    改进c系列(目录)
    网站管理艺术
    .net 跨平台也是一句谎言
    用户界面和逻辑应该分离
    设计模式
    程序员找不到工作是因为管理差
    编码阶段
    保证软件开发质量的一种管理学
  • 原文地址:https://www.cnblogs.com/lidabo/p/7323753.html
Copyright © 2011-2022 走看看