RasPlex / OpenPHT

OpenPHT is a community driven fork of Plex Home Theater
Other
596 stars 110 forks source link

32 bit build fails #104

Open mvgalen opened 8 years ago

mvgalen commented 8 years ago

Building fails with the error below on 32-bit. This is caused by the -msse4.1 flag missing in CXX_FLAGS in xbmc/CMakeFiles/xbmc.dir/flags.make

For x86_64 this flag is implicitly enabled by gcc, but for 32bit it has to be explicitly set. After adding the flag the build succeeds.

In file included from /usr/lib/gcc/i586-linux-gnu/5/include/x86intrin.h:31:0, from /usr/include/i386-linux-gnu/c++/5/bits/opt_random.h:33, from /usr/include/c++/5/random:50, from /usr/include/c++/5/bits/stl_algo.h:66, from /usr/include/c++/5/algorithm:62, from /media/8f0289ec-7f4b-485f-82b6-1e9243b9a524/media/Marijn/openpht-source/xbmc/utils/StdString.h:667, from /media/8f0289ec-7f4b-485f-82b6-1e9243b9a524/media/Marijn/openpht-source/xbmc/cores/dvdplayer/DVDCodecs/Audio/../../DVDDemuxers/DVDDemux.h:23, from /media/8f0289ec-7f4b-485f-82b6-1e9243b9a524/media/Marijn/openpht-source/xbmc/cores/dvdplayer/DVDCodecs/Audio/../../DVDStreamInfo.h:27, from /media/8f0289ec-7f4b-485f-82b6-1e9243b9a524/media/Marijn/openpht-source/xbmc/cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp:25: /usr/lib/gcc/i586-linux-gnu/5/include/xmmintrin.h:69:74: error: multiple types in one declaration typedef float m128 __attribute ((vector_size (16), may_alias));

OpenPHT: 1.6 Building on debian 32bit

Kwiboo commented 8 years ago

Thanks for reporting, would greatly appreciate pull requests to help fix these compile issues.

We compile our linux variants inside the docker images in the https://github.com/RasPlex/Dockerfiles repo. Will run compile tests using ubuntu32 images to help spot 32-bit compile issues in the future.

mvgalen commented 8 years ago

I am first doing the whole build and then will have a go at it, although my experience in cmake is somewhat lacking.

Kwiboo commented 8 years ago

I have managed to build i386 deb-files on jessie, wily and xenial using the latest docker images and https://github.com/RasPlex/OpenPHT/commit/0b36ed455bbffc19404095b568572e924d428316 (-msse is used by Kodi for gcc >= 4.9 on i386). Building on trusty i386 makes gcc crash at 97%.