IDK newbie question - in the 'IDK getting started guide', there is info about how to use the SAMPLES to MAKE binaries for samples such as GLES2 and REMOTE. The doc says the following:
Each sample includes a makefile that is used to generate a squashfs.bin file that can be sideloaded on your IDK-supported Roku streaming player. To package a sample IDK application, open a terminal application on your Linux workstation, change the directory to the sample to be packaged, and then enter make.
cd ../samples/gles2 make
When I run the above 2 commands for either the samples gles2 or remote, I receive an error message
"../common/rules.mk:36: *** CXX is not set, did you forget to include Roku4.mk?. Stop."
The SAMPLES/GLES2 folder as downloaded contains a MAKEFILE, as does the SAMPLES/REMOTE folder; the documentation talks about a 'Simplified build system (common)' and tries to describe the purpose of Roku4.mk and rules.mk that are in the SAMPLES/COMMON folder - but sorry after much review I cannot determine what to do to create the binaries I need for sideloading the GLES2 or REMOTE samples. Does the Roku4.mk and / or rules.mk files each need to be custom edited, and then copied into the Samples/GLES2 folder before issuing the MAKE command? Does the Roku4.mk file need to be customized and then used to replace the MAKEFILE that is already in the Samples/GLES2 folder??
A very confused IDK newbie.
I was able to resolve my own issues - embarrassingly caused when I incorrectly 'extracted' the downloaded IDK. On a WIN10 WSL system, I failed to download/copy the IDK download file to the proper location. Once I copied the downloaded IDK file to my WSL home/user directory on a Ubuntu 20.04 system, and then used the correct TAR command to Extract the downloaded file, everything worked fine, and I was able to correctly run the MAKE files for the Roku IDK samples that were present in the IDK download TAR files. So I caused my own problems initially, but now all is fine.
Making some progress. For the IDK Samples GLES2 and REMOTE, I almost have the MAKE commands working now .... except toward the end of MAKE process I am receiving these two error messages when I try ans MAKE either GLES2 or REMOTE:
/mnt/c/roku-idk/platforms/Roku4/toolchain/bin/../lib/gcc/arm-roku-linux-gnueabi/10.3.0/../../../../arm-roku-linux-gnueabi/bin/ld: cannot find libc.so.6
/mnt/c/roku-idk/platforms/Roku4/toolchain/bin/../lib/gcc/arm-roku-linux-gnueabi/10.3.0/../../../../arm-roku-linux-gnueabi/bin/ld: cannot find ld-linux.so.3
collect2: error: ld returned 1 exit status
make: *** [../common/rules.mk:52: package/sample-remote] Error 1
Can anyone help as to why libc.so.6 and ld-linux.so.3 cannot be found?
.... receiving these errors when running MAKE on a Ubuntu-20.04 system installed in a WIN10 WSL 2 system....
I was able to resolve my own issues - embarrassingly caused when I incorrectly 'extracted' the downloaded IDK. On a WIN10 WSL system, I failed to download/copy the IDK download file to the proper location. Once I copied the downloaded IDK file to my WSL home/user directory on a Ubuntu 20.04 system, and then used the correct TAR command to Extract the downloaded file, everything worked fine, and I was able to correctly run the MAKE files for the Roku IDK samples that were present in the IDK download TAR files. So I caused my own problems initially, but now all is fine.
Can you help answer a question?
Once I develop an app using IDk, will my friends be able to sideload the binary file on their device If I share the squashfs.bin?
Yes. Sharing the resulting binary is the only way to distribute IDK apps currently. (Unless you're sharing the source code, and expecting each user to compile it themselves)