On latest PopOS/Ubuntu and followed the instructions here, ran Setup.sh
and GenerateProjectFile.sh
successfully despite some warnings but those same warnings return when make
tries to build the UE4Editor
target.
One of the original errors seemed to stem from a missing FBX SDK, so I installed that manually and copied libfbxsdk.so
into the indicated directory, but I’m still getting these warnings/errors:
Engine/Plugins/Compression/OodleData/Source/../Sdks/2.9.0/lib/Linux/liboo2corelinux64.a
Engine/Plugins/Compression/OodleNetwork/Source/../Sdks/2.9.0/lib/Linux/liboo2netlinux64.a
Engine/Plugins/Developer/TextureFormatOodle/Source/../Sdks/2.9.0/lib/Linux/liboo2texlinux64.a
ThirdParty/libOpus/opus-1.3.1-12/bin/Linux/x86_64-unknown-linux-gnu/Release/libopus.a
ThirdParty/libOpus/opus-1.3.1-12/bin/Linux/x86_64-unknown-linux-gnu/Release/libopus_sse41.a
Engine/Binaries/ThirdParty/FBX/2020.2/Linux/x86_64-unknown-linux-gnu/libfbxsdk.so
Engine/Binaries/ThirdParty/OpenXR/linux/x86_64-unknown-linux-gnu/libopenxr_loader.so
There was also an issue with the UnrealUSDWrapper
module missing a directory:
Engine/Plugins/Importers/USDImporter/Source/ThirdParty/Linux/bin/x86_64-unknown-linux-gnu
The project seems to be building, still anticipating a failure, wondering if these missing modules are going to bite me later and if there’s a proper way to resolve them?
Update: Build failed with a No such file or directory
when it tries to link liboo2corelinux64.a
, so I guess it is an actively required library. Where/how should I be building OodleData
if it’s not included as a part of the setup process?
Update #2
Dug into the build/setup a bit, found the BuildThirdParty.sh
script and ran it. Looks like it doesn’t get past the BuildZ
step, failing with the output below. It should be noted that this script doesn’t error out, so Setup always returns ‘Success’
==> BuildZ
building zlib
+ cd Source/ThirdParty/zlib/zlib-1.2.5/build
+ tar xf zlib-1.2.5.tar.gz
+ cd zlib-1.2.5
+ CFLAGS=-fPIC
+ ./configure
Checking for gcc...
Checking for shared library support...
Building shared library libz.so.1.2.5 with gcc.
Checking for off64_t... Yes.
Checking for fseeko... Yes.
Checking for unistd.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf().
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for attribute(visibility) support... Yes.
+ make -j4
gcc -fPIC -D_LARGEFILE64_SOURCE=1 x86_64-unknown-linux-gnu -c -o example.o example.c
gcc -fPIC -D_LARGEFILE64_SOURCE=1 x86_64-unknown-linux-gnu -c -o adler32.o adler32.c
gcc -fPIC -D_LARGEFILE64_SOURCE=1 x86_64-unknown-linux-gnu -c -o compress.o compress.c
gcc -fPIC -D_LARGEFILE64_SOURCE=1 x86_64-unknown-linux-gnu -c -o crc32.o crc32.c
gcc: warning: x86_64-unknown-linux-gnu: linker input file unused because linking not done
gcc: error: x86_64-unknown-linux-gnu: linker input file not found: No such file or directory
make: *** [<builtin>: compress.o] Error 1
make: *** Waiting for unfinished jobs....
gcc: warning: x86_64-unknown-linux-gnu: linker input file unused because linking not done
gcc: error: x86_64-unknown-linux-gnu: linker input file not found: No such file or directory
make: *** [<builtin>: adler32.o] Error 1
gcc: warning: x86_64-unknown-linux-gnu: linker input file unused because linking not done
gcc: error: x86_64-unknown-linux-gnu: linker input file not found: No such file or directory
make: *** [<builtin>: crc32.o] Error 1
gcc: warning: x86_64-unknown-linux-gnu: linker input file unused because linking not done
gcc: error: x86_64-unknown-linux-gnu: linker input file not found: No such file or directory
make: *** [<builtin>: example.o] Error 1
Looks like there are also a number of issues with line endings and .sh files formatted not-for-linux which causes a number of failures. Not sure if these are corrected during the build process and it’s a bit tough to get a bead on which files need to be updated since dos2unix
reports them back as binary files.