Raspberry Pi

Discussion about other and unofficial ports of ScummVM

Moderator: ScummVM Team

Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Ah phew. So far so good then.

Thank you for your support. I know it's not something you have to provide in anyway so I really appreciate it.

I will definitely check out that course. I grew up on DOS and Windows and know my way around those with ease but have always been blind to Linux so setting up the Pi was a real eye opener!
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Well that didn't work either, still got the out of memory error.

Are you certain the export flag command should fix this and you mentioned this:
digitall wrote:export CXXFLAGS="-Wl,--no-keep-memory" will not help with the issues you indicate as that linker problem manifests as an operating system Out Of Memory error...
I will try again but can't see where I'm going wrong.

Do I need to clone the git again or can I just type:

make clean
export CXXFLAGS="-WI,--no-keep-memory"
make

and that should work? Just to clarify is it -WI as in letter l for lima for number 1 I should be using? if it is l for lima does it matter is its lower case l or upper case L?

Here is my kernal log:

Code: Select all

Jan  2 18:05:18 raspberrypi kernel: [29185.259204] ifplugd invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=-1000
Jan  2 18:05:18 raspberrypi kernel: [29185.259233] CPU: 0 PID: 1648 Comm: ifplugd Not tainted 3.12.28+ #709
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259281&#93; &#91;<c001444c>&#93; &#40;unwind_backtrace+0x0/0xec&#41; from &#91;<c0011730>&#93; &#40;show_stack+0x10/0x14&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259306&#93; &#91;<c0011730>&#93; &#40;show_stack+0x10/0x14&#41; from &#91;<c043df38>&#93; &#40;dump_header.isra.13+0x94/0x1d8&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259330&#93; &#91;<c043df38>&#93; &#40;dump_header.isra.13+0x94/0x1d8&#41; from &#91;<c00a3040>&#93; &#40;oom_kill_process+0x450/0x47c&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259350&#93; &#91;<c00a3040>&#93; &#40;oom_kill_process+0x450/0x47c&#41; from &#91;<c00a35a8>&#93; &#40;out_of_memory+0x2e4/0x330&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259372&#93; &#91;<c00a35a8>&#93; &#40;out_of_memory+0x2e4/0x330&#41; from &#91;<c00a7510>&#93; &#40;__alloc_pages_nodemask+0x83c/0x920&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259391&#93; &#91;<c00a7510>&#93; &#40;__alloc_pages_nodemask+0x83c/0x920&#41; from &#91;<c00a1c74>&#93; &#40;filemap_fault+0x230/0x4cc&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259420&#93; &#91;<c00a1c74>&#93; &#40;filemap_fault+0x230/0x4cc&#41; from &#91;<c00be274>&#93; &#40;__do_fault+0x6c/0x508&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259440&#93; &#91;<c00be274>&#93; &#40;__do_fault+0x6c/0x508&#41; from &#91;<c00c17b4>&#93; &#40;handle_mm_fault+0x234/0xa10&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259470&#93; &#91;<c00c17b4>&#93; &#40;handle_mm_fault+0x234/0xa10&#41; from &#91;<c04464b8>&#93; &#40;do_page_fault+0x2a0/0x428&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259490&#93; &#91;<c04464b8>&#93; &#40;do_page_fault+0x2a0/0x428&#41; from &#91;<c000842c>&#93; &#40;do_PrefetchAbort+0x34/0x98&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259509&#93; &#91;<c000842c>&#93; &#40;do_PrefetchAbort+0x34/0x98&#41; from &#91;<c0445054>&#93; &#40;ret_from_exception+0x0/0x10&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259518&#93; Exception stack&#40;0xc33bbfb0 to 0xc33bbff8&#41;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259530&#93; bfa0&#58;                                     00000000 be879c38 00000000 00000000
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259544&#93; bfc0&#58; be879cb8 00000000 00000000 0000008e 000156ac 00000000 00000007 00000000
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259556&#93; bfe0&#58; 00000000 be879b9c 0000a354 b6e99f94 40000010 ffffffff
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259563&#93; Mem-info&#58;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259570&#93; Normal per-cpu&#58;
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259578&#93; CPU    0&#58; hi&#58;   18, btch&#58;   3 usd&#58;   0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93; active_anon&#58;4572 inactive_anon&#58;4616 isolated_anon&#58;32
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93;  active_file&#58;12 inactive_file&#58;17 isolated_file&#58;0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93;  unevictable&#58;0 dirty&#58;0 writeback&#58;12 unstable&#58;0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93;  free&#58;2048 slab_reclaimable&#58;306 slab_unreclaimable&#58;834
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93;  mapped&#58;0 shmem&#58;0 pagetables&#58;256 bounce&#58;0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259596&#93;  free_cma&#58;0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259641&#93; Normal free&#58;8192kB min&#58;8192kB low&#58;10240kB high&#58;12288kB active_anon&#58;18288kB inactive_anon&#58;18464kB active_file&#58;48kB inactive_file&#58;68kB unevictable&#58;0kB isolated&#40;anon&#41;&#58;128kB isolated&#40;file&#41;&#58;0kB present&#58;65536kB managed&#58;58068kB mlocked&#58;0kB dirty&#58;0kB writeback&#58;48kB mapped&#58;0kB shmem&#58;0kB slab_reclaimable&#58;1224kB slab_unreclaimable&#58;3336kB kernel_stack&#58;600kB pagetables&#58;1024kB unstable&#58;0kB bounce&#58;0kB free_cma&#58;0kB writeback_tmp&#58;0kB pages_scanned&#58;176 all_unreclaimable? yes
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259650&#93; lowmem_reserve&#91;&#93;&#58; 0 0
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259662&#93; Normal&#58; 34*4kB &#40;UMR&#41; 1*8kB &#40;R&#41; 1*16kB &#40;R&#41; 1*32kB &#40;R&#41; 1*64kB &#40;R&#41; 2*128kB &#40;R&#41; 2*256kB &#40;R&#41; 2*512kB &#40;R&#41; 0*1024kB 1*2048kB &#40;R&#41; 1*4096kB &#40;R&#41; = 8192kB
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259709&#93; 671 total pagecache pages
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259720&#93; 642 pages in swap cache
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259728&#93; Swap cache stats&#58; add 473623, delete 472981, find 210914/262266
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259734&#93; Free swap  = 0kB
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.259739&#93; Total swap = 102396kB
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262060&#93; 16384 pages of RAM
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262074&#93; 2228 free pages
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262080&#93; 1867 reserved pages
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262090&#93; 800 slab pages
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262124&#93; 42 pages shared
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262133&#93; 642 pages swap cached
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262140&#93; &#91; pid &#93;   uid  tgid total_vm      rss nr_ptes swapents oom_score_adj name
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262168&#93; &#91;  156&#93;     0   156      722        0       5      133         -1000 udevd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262181&#93; &#91;  684&#93;     0   684      721        0       5      134         -1000 udevd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262194&#93; &#91;  687&#93;     0   687      721        0       5      133         -1000 udevd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262208&#93; &#91; 1648&#93;     0  1648      438        5       5       16         -1000 ifplugd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262226&#93; &#91; 1659&#93;     0  1659      438        5       5       16         -1000 ifplugd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262240&#93; &#91; 1970&#93;     0  1970     6994        0       8      114             0 rsyslogd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262253&#93; &#91; 1995&#93;     0  1995     2479       19       7       97             0 nmbd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262266&#93; &#91; 2022&#93;     0  2022      950       10       6       31             0 cron
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262278&#93; &#91; 2037&#93;     0  2037     4718       25      13      150             0 smbd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262290&#93; &#91; 2060&#93;     0  2060     4847        0      12      168             0 smbd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262303&#93; &#91; 2078&#93;   104  2078      795        0       5       56             0 dbus-daemon
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262314&#93; &#91; 2117&#93;     0  2117     1088        0       5       51             0 bluetoothd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262328&#93; &#91; 2161&#93;   102  2161     1379       22       6       86             0 ntpd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262343&#93; &#91; 2241&#93;     0  2241     1225        0       5      429         -1000 dhclient
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262382&#93; &#91; 2282&#93;     0  2282     1554        0       6      106         -1000 sshd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262397&#93; &#91; 2310&#93; 65534  2310      505        5       5       23             0 thd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262410&#93; &#91; 2321&#93;     0  2321      816        0       5       85             0 login
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262422&#93; &#91; 2322&#93;     0  2322      937        0       6       32             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262435&#93; &#91; 2323&#93;     0  2323      937        0       6       32             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262447&#93; &#91; 2324&#93;     0  2324      937        0       6       32             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262459&#93; &#91; 2325&#93;     0  2325      937        0       6       32             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262473&#93; &#91; 2326&#93;     0  2326      937        0       5       32             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262485&#93; &#91; 2327&#93;     0  2327      517        0       5       31             0 getty
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262497&#93; &#91; 2328&#93;     0  2328     2315        0       7      147             0 sshd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262510&#93; &#91; 2331&#93;  1000  2331     1656        0       7      561             0 bash
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262522&#93; &#91; 2349&#93;  1000  2349     2350        0       7      168             0 sshd
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262535&#93; &#91; 2350&#93;  1000  2350      597        0       4       93             0 sftp-server
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262547&#93; &#91; 2554&#93;  1000  2554     1704        0       7      863             0 make
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262561&#93; &#91;11522&#93;  1000 11522      440        0       3       18             0 sh
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262573&#93; &#91;11523&#93;  1000 11523     1023        0       5       36             0 g++
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262585&#93; &#91;11524&#93;  1000 11524      970        0       5       23             0 collect2
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262600&#93; &#91;11525&#93;  1000 11525    31620     8484      65    21984             0 ld
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262609&#93; Out of memory&#58; Kill process 11525 &#40;ld&#41; score 761 or sacrifice child
Jan  2 18&#58;05&#58;18 raspberrypi kernel&#58; &#91;29185.262621&#93; Killed process 11525 &#40;ld&#41; total-vm&#58;126480kB, anon-rss&#58;33936kB, file-rss&#58;0kB
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto »

You'll need export that in CXXFLAGS before running configure.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

I think I may have figured out where I went wrong. On my iPhone the export flag command looked like "-WI (Whiskey India) but on my PC it looks like "-Wl (Whiskey lima) so I think I used i instead of l and the uppercase i (I) looks the same as a lowercase l on my phone.

So of all the stupid things to get tripped up on...

So I've typed:
make clean
export CXXFLAGS="-Wl,--no-keep-memory"
./configure
make

And now it's gonna do its thing for 8 hours. So hopefully it will work this time.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Gonna have to give up.

Even when running

make clean
export CXXFLAGS="-Wl,--no-keep-memory"
./configure
make

I'm still getting the out of memory error.

Thankyou for all the advice.
digitall
ScummVM Developer
Posts: 1172
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

The CXXFLAGS="-Wl,--no-keep-memory" options only reduces the amount of memory the GCC linker requires, so an OOM is still possible with the full set of engines.

If you just want to play the SCI games, then can I suggest:
./configure --disable-all-engines --enable-engines=sci,sci32 && make clean && make

That will built ScummVM with just the SCI and SCI32 engines.

Another option would be to do a dynamic plugins build using:
./configure --enable-plugins --default-dynamic && make clean && make

This avoid the need to link a hug static binary at the end.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Thanks I'll give it a try.

Is it worth changing the RAM split from CPU/GPU 256/256 to 384/128 or is virtual memory the issue and not RAM?
digitall
ScummVM Developer
Posts: 1172
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

You could try that, but the issue is mainly the lack of Virtual Memory / Swap.

This affects native compilation on many of the embedded device targets as most have limited RAM i.e. 512M or less and use Flash memory which if used as Swap would wear out fairly quickly and fail.

Another option would be to add an external hard disk partition as swap space (NOT the SD card as that is Flash memory). See:
https://raspberrypi.stackexchange.com/q ... swap-space
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto »

Angelus3K wrote:Gonna have to give up.

Even when running

make clean
export CXXFLAGS="-Wl,--no-keep-memory"
./configure
make

I'm still getting the out of memory error.

Thankyou for all the advice.
I guess you should also pass that to LDFLAGS and not CXXFLAGS. CXXFLAGS won't be passed to the linker command.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Yea it complies and when it says Linker is when it aborts.

So if I type

export LDFLAGS="-Wl,--no-keep-memory"

That should help?

I'll also try a USB swap drive.

I take it there's nowhere to get a pre-compiled version of 1.7.0 lol!
User avatar
LordHoto
ScummVM Developer
Posts: 1029
Joined: Sun Oct 30, 2005 3:58 pm
Location: Germany

Post by LordHoto »

Angelus3K wrote:So if I type

export LDFLAGS="-Wl,--no-keep-memory"

That should help?
It's worth a try, yes.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

LordHoto wrote:
Angelus3K wrote:So if I type

export LDFLAGS="-Wl,--no-keep-memory"

That should help?
It's worth a try, yes.
Well I don't know what did it or if it was a mixture but I changed the memory split on the RAM to give the CPU as much as possible and ran both export CXXFLAGS and LDFLAGS and set it off overnight.

This morning when I awoke it had compiled!! I ran make install and got an error but it was a permissions error so just ran sudo make install and it seemed to do it's thing ok!

I haven't yet ran ScummVM to check it loads 1.7.0 as I was SSH'd in from my PC and had to leave for work but I will try it tonight and report back!
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

You guys are legends!! It works!!

Thank you to everyone that helped me.

I must have grabbed the latest daily build as it says I have 1.8.0!!! Are there any juicy updates I should know about in this release? :twisted:

Again, thank you all. If anyone needs any help compiling for Pi in future just give me a shout.
Angelus3K
Posts: 79
Joined: Sat Nov 19, 2005 2:48 pm

Post by Angelus3K »

Just to confirm what the other guy was saying. 1.4.1 exits back to Emulation Station fine in RetroPie but the 1.8.0 git build just crashes the Pi when you try to exit back to Emulation Station. Not a huge issue just requires a restart of the Pi.
etimm
Posts: 1
Joined: Mon Apr 20, 2015 6:37 pm

Post by etimm »

I have a question. Is there any way to get a touchscreen working with scummvm? I have a 5" 800x400 HDMI LCD from waveshare. The touchscreen works perfect in raspbian, but in scummvm the cursor jumps along the edges of the screen when I press anywhere on the screen.
This results in Indiana Jones walking to the edges instead of where I touched the screen. Is there a way to get it to work properly?
Post Reply