..:: PCSX2 Forums ::..

Full Version: Linux - Compile Guide and Support
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
It seems revision 2145 has got some troubles building on GNU/Linux:

Code:
-------------- Build: Release in x86emitter ---------------

Compiling: ../../src/x86emitter/groups.cpp
../../include/x86emitter/x86types.h: In function ‘void x86Emitter::_g1_EmitOp(x86Emitter::G1Type, const x86Emitter::xRegisterInt&, int)’:
../../include/x86emitter/x86types.h:55: sorry, unimplemented: inlining failed in call to ‘void x86Emitter::xWrite(T) [with T = char]’: function body not available
/home/montblanc/Pacchetti/PCSX2/pcsx2-svn/common/src/x86emitter/groups.cpp:93: sorry, unimplemented: called from here
Process terminated with status 1 (0 minutes, 1 seconds)
2 errors, 0 warnings
Ok, should be fixed in r2148.
It's ok!
EDIT: It seems pcsx2 is now complaining about a gcc4.4 illegal instruction:

Code:
Compiling: ../VUops.cpp
/home/montblanc/Pacchetti/PCSX2/pcsx2-svn/pcsx2/VUops.cpp: In function ‘void _vuRegsSUBAw(VURegs*, _VURegsNum*)’:
/home/montblanc/Pacchetti/PCSX2/pcsx2-svn/pcsx2/VUops.cpp:2289: internal compiler error: Istruzione illecita
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.4/README.Bugs> for instructions.
Process terminated with status 1 (2 minutes, 59 seconds)
1 errors, 6 warnings
I want to attempt to build PCSX2 Beta 1888 on Chakra. (ArchLinux).
But I'm not exactly sure what the dependencies are...
Has anyone gotten B1888 to build on their computer?
Why do you need 1888? For legacy use 1736, otherwise -- 2201 would be correct choises.
Where are the depencies listed for 2201?
In rev 2273 I got that:
"The configured GS plugin file is not a valid dynamic library
/tmp/pcsx2/bin/plugins/libZeroGSogld.so.0.96.2
Press Ok to go to the Plugin Configuration Panel."
What's wrong? I have no another error message.
upd: I simply forgot some libraries from 32bit system.
When I try to compile r2315 on x86_64 Linux (Ubuntu 9.10), I get
Code:
||=== x86emitter, Debug ===|
/usr/include/wx-2.8/wx/string.h|827|error: ‘wxChar& wxString::operator[](unsigned int)’ cannot be overloaded|
/usr/include/wx-2.8/wx/string.h|824|error: with ‘wxChar& wxString::operator[](size_t)’|
||=== Build finished: 2 errors, 0 warnings ===|

On i686 however, everything works fine expect

Code:
||=== SPU2-X, Debug ===|
../../../../common/include/Utilities/Dependencies.h|60|error: wx/string.h: No such file or directory|
../../../../common/include/Utilities/Dependencies.h|61|error: wx/gdicmn.h: No such file or directory|
../../../../common/include/Utilities/Dependencies.h|62|error: wx/intl.h: No such file or directory|
../../../../common/include/Utilities/Dependencies.h|63|error: wx/log.h: No such file or directory|
../../../../common/include/Utilities/StringHelpers.h|20|error: wx/tokenzr.h: No such file or directory|
../../../../common/include/Pcsx2Types.h|100|error: 'u32' does not name a type|
../../../../common/include/Pcsx2Types.h|101|error: 's32' does not name a type|
../../../../common/include/Pcsx2Types.h|116|error: 'u64' does not name a type|
../../../../common/include/Pcsx2Types.h|117|error: 'u64' does not name a type|
../../../../common/include/Pcsx2Types.h|120|error: 'u64' has not been declared|
../../../../common/include/Pcsx2Types.h|127|error: 'u32' has not been declared|
../../../../common/include/Pcsx2Types.h|122|error: too many initializers for 'u128'|
../../../../common/include/Pcsx2Types.h|129|error: too many initializers for 'u128'|
../../../../common/include/Pcsx2Types.h|136|error: 's64' does not name a type|
../../../../common/include/Pcsx2Types.h|137|error: 's64' does not name a type|
../../../../common/include/Pcsx2Types.h|140|error: 's64' has not been declared|
../../../../common/include/Pcsx2Types.h|147|error: 's32' has not been declared|
../../../../common/include/Pcsx2Types.h|147|error: 'static s128 s128::From64(int)' cannot be overloaded|
../../../../common/include/Pcsx2Types.h|140|error: with 'static s128 s128::From64(int)'|
../../../../common/include/Pcsx2Types.h|142|error: too many initializers for 's128'|
../../../../common/include/Pcsx2Types.h|149|error: too many initializers for 's128'|
/tmp/pcsx2-read-only/plugins/spu2-x/src/Global.h|52|error: 'u8' does not name a type|
/tmp/pcsx2-read-only/plugins/spu2-x/src/Global.h|53|error: 'u8' does not name a type|
/tmp/pcsx2-read-only/plugins/spu2-x/src/Global.h|64|error: expected initializer before 'void'|
/tmp/pcsx2-read-only/plugins/spu2-x/src/Global.h|70|error: expected initializer before 'T'|
../../../../common/include/Pcsx2Defs.h|322|error: ISO C++ forbids declaration of 's8' with no type|
../../../../common/include/Pcsx2Defs.h|322|error: expected ';' before '*' token|
../../../../common/include/Pcsx2Defs.h|330|error: 'u32' does not name a type|
../../../../common/include/Pcsx2Defs.h|331|error: 'u32' does not name a type|
../../../../common/include/Utilities/Assertions.h|93|error: ISO C++ forbids declaration of 'wxChar' with no type|
../../../../common/include/Utilities/Assertions.h|93|error: expected ',' or '...' before '*' token|
../../../../common/include/Utilities/Assertions.h|94|error: ISO C++ forbids declaration of 'wxChar' with no type|
../../../../common/include/Utilities/Assertions.h|94|error: expected ',' or '...' before '*' token|
../../../../common/include/Utilities/StringHelpers.h|25|error: 'wxString' does not name a type|
../../../../common/include/Utilities/StringHelpers.h|26|error: 'wxString' does not name a type|
../../../../common/include/Utilities/StringHelpers.h|29|error: 'wxRect' does not name a type|
../../../../common/include/Utilities/StringHelpers.h|31|error: variable or field 'SplitString' declared void|
../../../../common/include/Utilities/StringHelpers.h|31|error: 'wxArrayString' was not declared in this scope|
../../../../common/include/Utilities/StringHelpers.h|31|error: 'dest' was not declared in this scope|
../../../../common/include/Utilities/StringHelpers.h|31|error: expected primary-expression before 'const'|
../../../../common/include/Utilities/StringHelpers.h|31|error: expected primary-expression before 'const'|
../../../../common/include/Utilities/StringHelpers.h|31|error: 'wxStringTokenizerMode' was not declared in this scope|
../../../../common/include/Utilities/StringHelpers.h|32|error: variable or field 'JoinString' declared void|
../../../../common/include/Utilities/StringHelpers.h|32|error: 'wxString' was not declared in this scope|
../../../../common/include/Utilities/StringHelpers.h|32|error: 'dest' was not declared in this scope|
../../../../common/include/Utilities/StringHelpers.h|32|error: expected primary-expression before 'const'|
../../../../common/include/Utilities/StringHelpers.h|32|error: expected primary-expression before 'const'|
../../../../common/include/Utilities/StringHelpers.h|34|error: 'wxString' does not name a type|
../../../../common/include/Utilities/StringHelpers.h|35|error: 'wxString' does not name a type|
../../../../common/include/Utilities/StringHelpers.h|36|error: 'wxString' does not name a type|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|

it starts up fine after all (only the affected plugin does not compile)
What's happening at the 64bit build? Running 32bit software on 64bit Linux is a huge pain in the ass as of unnecessarily missing libraries: When I try to run the 32bit build on my 64bit machine, I get
Quote:./pcsx2-dbg: error while loading shared libraries: libwx_gtk2u_adv-2.8.so.0: cannot open shared object file: No such file or directory
with all ia32libs installed (why can't I just get the libs from the 32 bit repos?)
Question for everyone, used to compile pcsx2 under linuxes. I observe heavy performance degrade from r1888 to r2300+ (and to last one 2588). Most scenes drop are 30%, but under heavy load it's a 50%. So question is, It's issue on my side, on linux build or on whole pcsx2 project?
Code:
/mnt/storage/src/ps2/pcsx2-read-only/pcsx2/x86/newVif_Dynarec.cpp: In function 'void dVifUnpack(int, u8*, u32, bool)':
/mnt/storage/src/ps2/pcsx2-read-only/pcsx2/x86/newVif_Dynarec.cpp:207: sorry, unimplemented: inlining failed in call to 'void dVifUnpack(int, u8*, u32, bool)': recursive inlining
/mnt/storage/src/ps2/pcsx2-read-only/pcsx2/x86/newVif_Dynarec.cpp:256: sorry, unimplemented: called from here
make[2]: *** [pcsx2/CMakeFiles/pcsx2.dir/x86/newVif_Dynarec.cpp.o] Error 1
make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/all] Error 2
make: *** [all] Error 2
also i had to do this to get cmake to configure the project:

Code:
Index: pcsx2/CMakeLists.txt
--- pcsx2/CMakeLists.txt    
+++ pcsx2/CMakeLists.txt    
@@ -167,7 +167,8 @@
    SPR.cpp
    Stats.cpp
    System.cpp
-    Vif_Commands.cpp
+    Vif_Transfer.cpp
    Vif0_Dma.cpp
    Vif1_Dma.cpp
    Vif1_MFIFO.cpp
i could've sworn i've seen it a few days ago fixed in svn.

those results were produced on fresh svn checkout rev. 2650
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35