motoharu-gosuto / psvpfstools

Tools for decrypting PS Vita PFS filesystem
127 stars 22 forks source link

Prepare different builds #17

Closed motoharu-gosuto closed 6 years ago

motoharu-gosuto commented 6 years ago

Win7 0x32 Win7 0x64 WinXP 0x32 WinXP 0x64 Ubuntu 0x32 Ubuntu 0x64

motoharu-gosuto commented 6 years ago

@SilicaAndPina I dont think so. Maybe in compatibility mode or smth? Usually you use different toolset to compile for XP and for Win7.

motoharu-gosuto commented 6 years ago

@tomazzz369 Windows builds are ready. Feel free to test.

tomazzz369 commented 6 years ago

unfortunately WinXP 0x32 not working on win xp 32 bit sp3

"Entry Point Not Found InitializeCriticalSectionEX in the library KERNEL32.dll"

motoharu-gosuto commented 6 years ago

@tomazzz369 This is really weird. Despite the fact that I have built it with xp toolchain. I also built zlib with xp toolchain myself, as well as curl and boost. I will try to investigate this but I am not sure. Can you may be built on your machine and provide a binary?

tomazzz369 commented 6 years ago

ok, first of all i never used cmake before. first i run your bat build_win32_xp.bat (i needed to remove -DBOOST_MODEL_TAG="-x32" because of warning), later i open the project in visual studio 2012 and i build app. i have 'release' build working fine on xp (compiled on win7 x64 with wisual studio 2012). seems to, everything is fine. tested one app, update, theme, and dlc

btw why release_win32_7 not working on win7 x64 - app crash. release_win64_7 working fine, weird because both builds should worked on win7 x64 (x86 and x64)

edit:

any idea how to fix

error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease' in F00DKeyEncryptor.obj

i want to use static libraries (runtime library /MT instead /MD). first time i have this issue

motoharu-gosuto commented 6 years ago

@tomazzz369 About compilation - wait. So you compiled on win7 x64 with visual studio 2012 and then tested on another machine with XP and it works fine? This is strange because I have exactly same setup and it does not work for you when I compile for XP.

About release_win32_7 - this is strange. It works just fine on my Win7 x64 machine. What type of crash are you experiencing?

About runtime - you can not mix static and dynamic runtime. If you are going to compile with static runtime - you have to change settings in all 4 projects. Probably you will also have to compile boost, curl and zlib with static runtime as well. It is not that easy.

About -DBOOST_MODEL_TAG="-x32" warning Cmake initially does not understand when boost libraries contain model tag in their name. You can either remove this cmake option or patch cmake FindBOOST script so that it handles model tag when doing library search.

tomazzz369 commented 6 years ago

yes. i build app on win7 x64 ultimate sp1 with visual studio 2012 express


this is build working on win xp 32 bit sp3

http://www116.zippyshare.com/v/V70TDZi5/file.html

Successfully decompressed zRIF from provided license string. parsing files.db... verifying header... header signature is valid root icv is valid Validating hash tree... Hash tree is ok Building directory matrix... Building file matrix... Flattening file pages... Building dir paths... Building file paths... Linking dir paths... Linking file paths... Matching file paths... parsing unicv.db... Total blocks: 40 Building unicv.db -> files.db relation... Match found: 2 PCSB00094/sce_sys/param.sfo Match found: 4 PCSB00094/sce_sys/clearsign Match found: 6 PCSB00094/sce_sys/keystone Match found: 8 PCSB00094/STARWARS_Rebels.pxp Creating directories... Created: PCSB00094/sce_sys Creating empty files... Decrypting files... Copied: PCSB00094/sce_sys/param.sfo Copied: PCSB00094/sce_sys/clearsign Decrypted: PCSB00094/sce_sys/keystone Decrypted: PCSB00094/STARWARS_Rebels.pxp keystone sanity check... keystone: matched retail hmac


"...you have to change settings in all 4 projects."

yes i already tried that yesterday and doesn't matter if i change manually in all projects to /MT or i will add add_definitions (/MT) in CMakeLists always i have this error: 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease'

motoharu-gosuto commented 6 years ago

@tomazzz369 Thanks! I will add this build to the release page.