View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004857 | The Dark Mod | Coding | public | 04.07.2018 04:30 | 30.01.2022 21:00 |
Reporter | caseyac | Assigned To | stgatilov | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | A-EON Cyrus, PPC64 e5500 | OS | Debian | OS Version | unstable |
Product Version | TDM 2.06 | ||||
Target Version | TDM 2.10 | Fixed in Version | TDM 2.10 | ||
Summary | 0004857: Build Error due to reference to cpuid.h on PPC64 | ||||
Description | The build and target system is an A-EON Cyrus board, a 64-bit Freescale PowerPC e5500 based system running Debian unstable (64-bit kernel, 32-bit user-space). Building fails due to reference to cpuid.h. Please consider fixing; the A-EON Cyrus is a current, consumer marketed system. Build Fail: g++ -o build/scons_powerpc/release/core/idlib/math/Rotation.o -c -pipe -Wall -Wno-unknown-pragmas -fmessage-length=0 -std=c++11 -fno-strict-aliasing -fvisibility=hidden -g -O3 -ffast-math -fno-unsafe-math-optimizations -DXTHREADS -Ibuild/scons_powerpc/release/core/sys/scons -Isys/scons -Iinclude -Iinclude/zlib -Iinclude/libjpeg -Iinclude/libpng -Iinclude/devil -Iinclude/ffmpeg -I. -Iidlib -Iframework -Igame idlib/math/Rotation.cpp g++ -o build/scons_powerpc/release/core/idlib/math/Simd.o -c -pipe -Wall -Wno-unknown-pragmas -fmessage-length=0 -std=c++11 -fno-strict-aliasing -fvisibility=hidden -g -O3 -ffast-math -fno-unsafe-math-optimizations -DXTHREADS -Ibuild/scons_powerpc/release/core/sys/scons -Isys/scons -Iinclude -Iinclude/zlib -Iinclude/libjpeg -Iinclude/libpng -Iinclude/devil -Iinclude/ffmpeg -I. -Iidlib -Iframework -Igame idlib/math/Simd.cpp idlib/math/Simd.cpp:21:10: fatal error: cpuid.h: No such file or directory #include <cpuid.h> ^~~~~~~~~ compilation terminated. scons: *** [build/scons_powerpc/release/core/idlib/math/Simd.o] Error 1 scons: building terminated because of errors. casey@Utopia:~/thedarkmod.2.06.src$ | ||||
Steps To Reproduce | Attempt build on a powerpc or emulated powerpc system. | ||||
Tags | No tags attached. | ||||
OMG, wtf cpu is this?!!11 =) I think PowerPC CPU with Linux OS was never supported even by ID software. At least this was never in consideration for TDM. Given that Apple has switched to x86 long time ago, there is no reason to support PowerPC except for people with very old Macs and you. It can probably be fixed during generic SIMD cleanup, which is not going to happen until 2.07 is out. You can fix compilation yourself: comment out this include, and the big "#ifdef __linux__" section in idSIMD::InitProcessor. |
|
Please provide a patch for us to merge, because setting up a PPC VM for build is "too much stress". | |
I'm not sure if @caseyac is still here... I have done cleanup of SIMD code (0004550), and wrapped all the x86-specific madness under proper ifdefs. So now (at least at rev 9279) it should be possible to compile TDM for PowerPC (after adding CPUSTRING define). However: 1) You will have to build all third-party libs for your platform, and I'm pretty sure you will have problems to overcome. See ThirdParty/readme.md. 2) Some additional problems might arise when you run built TDM (like calling convention in scripting engine). |
|
Date Modified | Username | Field | Change |
---|---|---|---|
04.07.2018 04:30 | caseyac | New Issue | |
05.07.2018 02:50 | stgatilov | Relationship added | related to 0004550 |
05.07.2018 03:01 | stgatilov | Note Added: 0010642 | |
05.07.2018 07:36 | duzenko | Note Added: 0010643 | |
14.04.2021 13:12 | stgatilov | Note Added: 0013848 | |
14.04.2021 13:13 | stgatilov | Assigned To | => stgatilov |
14.04.2021 13:13 | stgatilov | Status | new => feedback |
14.04.2021 13:13 | stgatilov | Target Version | => TDM 2.10 |
30.01.2022 21:00 | nbohr1more | Status | feedback => resolved |
30.01.2022 21:00 | nbohr1more | Resolution | open => fixed |
30.01.2022 21:00 | nbohr1more | Fixed in Version | => TDM 2.10 |