*/

64bit Linux환경에서 64/32bit으로 compile

64bit Linux환경에서는 기본적으로 gcc를 사용할 경우 64bit용으로 컴파일된다. 당연히 32bit Linux환경에서는 32bit용으로 컴파일된다.


gcc에서 -m옵션으로 비트수를 설정할수 있다
-m32 : 32bit binary
-m64 : 64bit binary

현재사용하고 있는 환경과 다른 bit용으로 컴파일하고자 할때 gcc-multilib의 설치가 필요하다.
sudo apt-get install gcc-multilib

해당라이브러리가 설치되기 전에 -m옵션을 통해 컴파일하면 아래와 같은 오류가 발생한다.
unrecognized emulation mode: 32
라이브러리 설치하면 정상적으로컴파일되는것을 확인 할 수 있다.

32bit로 컴파일
gcc -o test test.cpp -m32

64bit로 컴파일
gcc -o test test.cpp -m64

0 comments:

댓글 쓰기