Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

MasterPlan

Visual planning ideaboard, by indie devs, for indie devs and creatives · By SolarLune

[Fixed] MasterPlan does not start on Ubuntu 18.04

A topic by CalPhorus created Jan 20, 2020 Views: 475 Replies: 10
Viewing posts 1 to 11

I have tried to start MasterPlan both from the itch.io app, file manager (double-clicking), and from the terminal. When starting from the terminal, I get this error:

zsh: no such file or directory: ./MasterPlan

Performing the command readelf -d MasterPlan returned this:


Dynamic section at offset 0x729d00 contains 31 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libGL.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [librt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libasound.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000c (INIT)               0x429000
 0x000000000000000d (FINI)               0x7c8194
 0x0000000000000019 (INIT_ARRAY)         0xb2ac90
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x000000000000001a (FINI_ARRAY)         0xb2ac98
 0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
 0x000000006ffffef5 (GNU_HASH)           0x4003a8
 0x0000000000000005 (STRTAB)             0x4162f8
 0x0000000000000006 (SYMTAB)             0x4054b0
 0x000000000000000a (STRSZ)              62490 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000015 (DEBUG)              0x0
 0x0000000000000003 (PLTGOT)             0xb2b000
 0x0000000000000002 (PLTRELSZ)           6048 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x427108
 0x0000000000000007 (RELA)               0x426ef8
 0x0000000000000008 (RELASZ)             528 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006ffffffe (VERNEED)            0x426d98
 0x000000006fffffff (VERNEEDNUM)         6
 0x000000006ffffff0 (VERSYM)             0x425712
 0x0000000000000000 (NULL)               0x0

Performing locate XXX where XXX is the name of the libraries that readelf returned as needed, all of the libraries can be found in standard places on my system.

Performing a lookup of the interpreter readelf -a MasterPlan | grep interpreter returned:

      [Requesting program interpreter: /usr/lib64/ld-linux-x86-64.so.2]

This can also be found on my system in the location requested.

My google-fu has run out of ideas to try, so hopefully this information is enough for you. Let me know if any more info is needed.

Update:

It is now failing because libc6 2.29 is not found on my filesystem. I have version 2.27, which I believe is the highest version that can be fetched from vanilla Ubuntu 18.04.

Is it possible to build MasterPlan with an older version of libc?

Hello!

Yes, I am running libc 2.29, as I recall, on my system, so that might explain why it's not running on yours. My apologies, really! I can see about resolving this by either building with an older version of libc, or packaging my libraries up with the application. It'll take some time for me to look into these options and implement one, though, so please give me some time to work on this.

Thanks. Am looking forward to being able to use it!

(1 edit)

OK, I tried packaging local copies of the libraries in along with the build for Linux - please try updating and let me know if it worked!

Any news?

(2 edits)

Now I just get a segmentation fault when I try to run it.

Edit

This could be because the provided libraries are typically just symlinks to the actual binaries. On my system, performing the command locate libc.so.6 spits out quite a few of locations, however, the important one is “/lib/x86_64-linux-gnu/libc.so.6”. Performing the command results in the actual binary that is used.

~$ readlink /lib/x86_64-linux-gnu/libc.so.6
libc-2.27.so

Maybe when you package the libraries, include the binaries and create symlinks that match the expected name? Or rename the binaries to the expected name?

Hello! Sorry for the late reply; yeah, this is strange, and I'm getting the same result with an Ubuntu virtual machine. I'll probably just end up rebuilding off of an Ubuntu VM and seeing if that works. Sorry for the delay, and thanks for your patience.

If you have a GitLab account (or any account that provides you free minutes for CI/CD), it is possible to automate the build with an older version of Ubuntu and have it upload to itch.

With the latest update, it now runs.

Excellent, and apologies for the long wait; glad to hear that it's working for you! I'll probably investigate automating the builds, yeah; that way I wouldn't need to spin up virtual machines and boot up my Mac to build. Thanks a lot, again!