『壹』 ubuntu64位怎麼編譯32位qt庫
64位可以編32位的程序出來,在各種FLAGS中增加 -m32 編出來的就是32位程序,連接時自然是找32位的共享庫
這個要看發行版對32位支持的實現,比如gentoo下如果開abi支持雙架構那很可能悲劇,因為有些包還沒跟上,如果用binary的32位庫又會因為版本不同出現莫名其妙的問題,比如fontconfig的坑。
我在64位編32位程序都是使用chroot的方法,這樣就可以把32位的頭文件庫什麼的全放在某個地方。我用的是ubuntu,32位庫和64位庫位置不一樣,一般可以直接安裝32位的庫,如果遇到某些比較特殊的庫,一般都可以通過重新編譯增加rpath解決,如果沒源碼也可以用patchelf直接給elf上rpath。
『貳』 64位UBUNTU 下 如何用GCC 編譯出32位程序 求前輩指點
目測是32位的搜索路徑下沒有sys/cdefs.h
一般64位系統最好不要安裝32位庫的-dev,經常有沖突,強行安裝會破壞64位環境,頭文件並不像共享庫分得那麼完美。
我覺得比較好的做法是,重新把某一個文件夾當成rootfs,在裡面安裝各種32位的庫和庫-dev,然後給gcc傳遞參數"--sysroot=路徑"就可以讓gcc重新選取那個文件夾為rootfs,而不再認為/為rootfs。其實這樣就變成交叉編譯了。也可以在這個rootfs中安裝32位的必要軟體包如bash,gcc,coreutils等等,然後chroot進去就變成host編譯了。其實有個比較簡單的方法,就是虛擬機下安一個32位的ubuntu,然後裝好各種軟體包,然後直接對/打包,再拿出來解壓就是rootfs了,後面最多就是缺啥安啥,工作量比較小。當然如果你不在意編譯速度,直接虛擬機下編最簡單
『叄』 windows系統中64位的操作系統可以運行32位應用程序嗎
可以運行的,不受影響,系統都會兼容32位的應用程序。
『肆』 如何在64位win7上運行32位軟體
實現的方法和詳細的操作步驟如下:
1、首先,右鍵單擊32位軟體的圖標,選擇「屬性」選項,如下圖所示。
『伍』 64位win7下vs2010怎麼編譯出32位程序
早期在vs2008上的一個測試,希望能夠幫助你
一、win32改為x64編譯
我採用了vs2008平台,以下都是基於此平台將win32編譯改為x64編譯
這里以Debug模式為例,起初為Win32平台,要改成x64,如果有可直接選擇,否則需要新建,之後為。
然後打開vs的項目->屬性->配置屬性->連接器,
在「高級」選項中,目標計算機為MachineX64(/MACHINE:X64)。
在「命令行」選項中,將X86改為X64.
平台選擇x64,若沒有則新建之.
『陸』 如何在64位機器下編譯32位的內核
這個比較麻煩。
首先你要裝好全套的 32 位對應的開發編譯支持環境和對應的運行環境,之後還要設置你這個軟體編譯時用 32 位的參數和 32 位的編譯器。
你這個其實等同於交叉編譯。
『柒』 64位linux編譯32位程序
在64位的Linux下,gcc 編譯 32 位程序需要添加參數 -m32 ,ld需要添加參數是 -m elf_i386。
1、Along with the -m32 flag in gcc, you may need to include the -melf_i386 flag for ld to properly link the 32bit object files to the 32bit libraries if you have both the 32bit and 64bit libraries.
2、 ld命令 ld命令是GNU的連接器,將目標文件連接為可執行程序。
3、舉例:
gcc -m32 -o hello hello.c
gcc -m32 -c hello.o hello.c
ld -m elf_i386 -o kernel main.o hello.o