1. 程式人生 > >ubuntu 64上的GCC如何編譯32位程式

ubuntu 64上的GCC如何編譯32位程式

執行命令

gcc -v

顯示:

Target: x86_64-linux-gnu

所以,我這裡的gcc預設生成64位的程式。

如果想編出32位的程式,就要加 -m32選項。可是我嘗試了,還是不行。

原來,需要安裝東西。

  1. $ sudo apt-get install build-essential module-assistant  
  2. $ sudo apt-get install gcc-multilib g++-multilib  
裝好之後,就OK了。

比如:

gcc -m32 hello.c

相關推薦

ubuntu 64GCC如何編譯32程式

執行命令 gcc -v 顯示: Target: x86_64-linux-gnu 所以,我這裡的gcc預設生成64位的程式。 如果想編出32位的程式,就要加 -m32選項。可是我嘗試了,還是不行。 原來,需要安裝東西。 $ sudo apt-get install b

64ubuntu編譯32程式

如上使用C4這個小工具時遇到來需要模擬32位系統的需求,發現使用-m32引數後,編譯提示錯誤,如下: /usr/bin/ld: 未知的模擬模式: 32 支援的模擬: elf_x86_64 elf32_x86_64 elf_i386 i386linux elf_l1om e

linux64平臺編譯32程式: GCC編譯選項 -m64 -m32 -mx32

x86-64 與 IA-64 x86-64一般稱為AMD x86-64,難道x86-64不是Intel首先搞出來的指令集麼?這回的確是AMD乾的,但是用的是Intel 16bits升到32bits向下相容的套路。大致是這樣的: x86:從1978年來的8086處理器開

64linux支援執行32程式的方法

在64位的Linux上執行32位程式的時候會出現這種情況: (1)執行bin檔案時提示:No such file or directory (2)ldd bin檔案  的輸出為: not a dynamic executable (3)file bi

64Linux(ubuntu)安裝、執行32程式

ubuntu 64位版本,安裝支援32位程式的二進位制庫。 sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install zlib1g:i386 libstdc++6:

centos64編譯32程式問題

在centos64位上面編譯32位程式的時候遇到編譯不過的問題,解決過程如下: 1.編譯遇到錯誤,提示錯誤如下: [[email protected] code]# make In file included from /usr/include/features.h:399:0

Ubuntu64編譯32程式

在64位系統下編譯32位程式需要新增編譯選項: -m32 安裝32位庫 Terminal command $ sudo apt-get install libc6:i386

64機器VS2012編譯32程式在XP系統執行提示Wow64EnableWow64FsRedirection無法定位於輸入點

Wow64EnableWow64FsRedirection()函式是64位計算機用於定義轉向的函式,在32位計算機中不存在轉向問題 因此,在32位計算機中的kernel32.dll庫中就不存在此函式,當程式執行在32位計算機中時,就會提示無法定位 解決方法: 採用函式指標的

64系統下gcc按照32編譯c程式

有時候我們需要測試c程式碼在32位環境下的執行結果,這時候就需要gcc按照32位來編譯c了。 1、 安裝 sudo apt-get install lib32readline-gplv2-dev 2、編譯。加 -m32 引數 gcc -m32 hell

使 64ubuntu 支援32程式

第一步: 確認你有一個64位架構的核心 你可以開啟終端然後輸入: dpkg --print-architecture 你將會看到像下面這樣的內容: amd64 這說明著你已經擁有了64位架構核心。 第二步: 確認你打開了多架構支援功能 (多架構支援可以讓你在有64位庫的情況下使用32位庫。) 輸入:

64ubuntu編譯32彙編程式(同時連結C庫)

cmd.s如下://.include "linux.s" .section .data output1: .ascii "There are %d parameters:\n\0" //output2: // .ascii "%s/0" .section .text

64Ubuntu執行32程式及下載依賴庫

嗯幹活的時候就是會遇到一些奇奇怪怪的問題。 執行32位程式 在普通的64位Ubuntu機器上直接執行32位的ELF程式會出現這樣的問題: yy@yy-DELL:~$ ./cjpeg 115.bmp bash: ./cjpeg: 沒有那個檔案或目錄 然

64Ubuntu 16.04執行32程式

Android SDK的部分工具是64位的,部分則是32位的。在64位Xubuntu下安裝Android SDK後不能執行mksdcard工具,然後Android Studio就有問題。在64位Ubuntu下安裝32位應用程式所需要的庫,然後就可以在64位Ubu

"無法安裝64版本的Office,因為在您的PC找到了以下32程式"的解決辦法

今天在安裝office2013 64位版本的時候,出現“無法安裝64位版本的Office,因為在您的PC上找到了以下32位程式:Office 15 Click-to-Run Extensibility Component ,請解除安裝所有32位Office程式,然後重試安裝

如何在64linux強制編譯32應用程式

原文地址:http://blog.chinaunix.net/uid-20109107-id-86319.html GDC注:因為需要解決在linux64機上編譯32位的mongodb(沒辦法,因為編譯的php是32位,然後我想將mongdb擴充套件新增到php中),在網

使用VC6將32程式編譯成為64程式(這個才是可行的)

看了好多好多資料,自己也太過依賴現有的資料,按部就班不是真理不是真理!!! 建立64位環境             網上資料很多都以SDK2001少數以2003為例,有的說SDK2003是最後支援VC6的,汗,也不知道內在什麼原因,就按部就班的去下了2001/2003,嘗試到後面步驟的時候,雖然編譯通過了

32程式64系統呼叫GetModuleFileNameEx失敗

今天客戶打來電話說我們公司的伺服器程式在新裝的64位Windows 2003上以系統服務方式啟動不起來。初步懷疑是我們的32位服務程式哪個地方在64位機上不相容了。結果忙活了一上午,終於找到了問題所在。程式裡有一段程式碼是用來判斷程式是以服務方式啟動還是以視窗形式啟動:在應

Office:無法安裝64版本的Office,因為在您的PC找到了以下32程式

當你的計算機解除安裝Office老版本,安裝office 2016或office 365, 提示:“無法安裝64位版本的Office,因為在您的PC上找到了以下32位程式, 請解除安裝所有32位Offi

如何在64windows7同時使用3264的Eclipse

blog post 以及 卸載 jdk 實現 eclipse 刪除 oracl  64位機器上可以同時運行32位和64位的Eclipse,但是電腦中必須有相應的jdk。Eclipse雖然不需要安裝,但是在啟動時會檢查系統中固定文件夾下是否有合適的jre。例如32位Ec

在windowsgcc編譯第一個程式

C程式碼優勢在於離硬體更近,自己記憶體管理和程式碼優化更加直接/方便,目前多用於嵌入式系統的開發,或者linux後臺開發。 在公司一般是windows編輯程式碼,然後上傳到linux伺服器,使用gcc工具進行編譯。因此學習gcc/makefile工具的使用對C語言程式設計師來說很重要。