저는 tkinter 패키지의 32비트 버전을 빌드하기 위해 python src rpm을 다운로드했습니다. 이는 64비트 호스트(최신 centos 6)에 있습니다. 어떤 경우에는 -m32를 추가하지 못한 것 같습니다...
% rpm -Uvh python-2.6.6-66.el6_8.src.rpm
% cd ~/rpmbuild/SPECS
% rpmbuild --target i686 -bb python.spec
.
.
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -I. -IInclude -I./Include -I/usr/lib/libffi-3.0.5/include -fPIC -DPy_BUILD_CORE -c ./Modules/symtablemodule.c -o Modules/symtablemodule.o
gcc -pthread -shared Modules/readline.o -lreadline -ltermcap -o Modules/readline.so
gcc -pthread -shared Modules/arraymodule.o -o Modules/arraymodule.so
Modules/readline.o: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** [Modules/readline.so] Error 1
make: *** Waiting for unfinished jobs....
Modules/arraymodule.o: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make: *** [Modules/arraymodule.so] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.48OUTZ (%build)
rpmbuild에 32비트 패키지를 빌드하도록 지시하는 올바른 방법을 사용하고 있지 않습니까?
답변1
빌드에 필요한 32비트 개발 패키지가 누락되었습니다.