Page 1 of 1

[16.36] Headless Dependancy issues-Centos7

Posted: Tue May 01, 2018 5:49 am
by RaumSchnee
During my latest server update, I switched my Factorio version from .15 to .16.36(latest stable). before the update, everything ran well, and I had no issues. after I updated to .16 however, I no longer can launch the game, and Factorio wont generate any logs of it's own. After digging through the System logs for 30 minutes, I discovered the following error in journalctl:

Code: Select all

May 01 00:25:13  [personal info] factorio[1896]: /opt/factorio/bin/x64/factorio: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /opt/factorio/bin/x64/factorio
Having looked into it, Centos7 can't upgrade past GLIBC 2.17. I wish to use the new features of 16.36 on my server, but i can't seem to solve this with google or trial and error.

Q1: Is this dependency required, or is it an accident?
Q2: Does anyone know of a way to upgrade Centos7 GLIBC WITHOUT murdering the system?(yum says it's up to date)
Q3: Am i up a creek, and no longer able to host factorio untill REHL updates trickle down to centos?

Thanks for the help
--Raum Schnee

Re: [16.36] Headless Dependancy issues-Centos7

Posted: Tue May 01, 2018 6:14 am
by betrok

Re: [16.36] Headless Dependancy issues-Centos7

Posted: Tue May 01, 2018 6:19 am
by RaumSchnee
Aha! I missed that when I went skimming through the forum. Thanks for posting the link.

Re: [16.36] Headless Dependancy issues-Centos7

Posted: Tue May 01, 2018 7:48 am
by RaumSchnee
So I followed the instructions in the linked post, and running the test works just fine. Even in the systemd file, i can create the test.zip file.
however, when attempting to launch it with the normal server arguments:

Code: Select all

[root@Snowbird system]# systemctl daemon-reload
[root@Snowbird system]# systemctl start factorio.service
[root@Snowbird system]# systemctl status factorio -l
● factorio.service
   Loaded: loaded (/etc/systemd/system/factorio.service; bad; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2018-05-01 02:42:39 MDT; 6s ago
  Process: 1353 ExecStart=/opt/glibc-2.18/lib/ld-2.18.so --library-path /opt/glibc-2.18/lib /opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/ServerMap.zip --server-settings /opt/factorio/data/server-settings.json (code=exited, status=1/FAILURE)
 Main PID: 1353 (code=exited, status=1/FAILURE)

May 01 02:42:39 Snowbird.RSIndustries systemd[1]: Started factorio.service.
May 01 02:42:39 Snowbird.RSIndustries systemd[1]: Starting factorio.service...
May 01 02:42:39 Snowbird.RSIndustries ld-2.18.so[1353]: 0.000  Error Util.cpp:49: Error configuring paths: There is no package core in /usr/share/factorio. Deduced executable directory: /opt/glibc-2.18/lib, read data: __PATH__system-read-data__, write data: __PATH__system-write-data__
May 01 02:42:39 Snowbird.RSIndustries systemd[1]: factorio.service: main process exited, code=exited, status=1/FAILURE
May 01 02:42:39 Snowbird.RSIndustries systemd[1]: Unit factorio.service entered failed state.
May 01 02:42:39 Snowbird.RSIndustries systemd[1]: factorio.service failed.

It is currently 2am, and i cant think through this. if someone can see my (probably dumb)error, please point it out. Ill check back tomorrow morning. Thanks

Systemd File:

Code: Select all

Description=Factorio Headless Server

[Service]
Type=simple
User=root
ExecStart=/opt/glibc-2.18/lib/ld-2.18.so --library-path /opt/glibc-2.18/lib /opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/ServerMap.zip --server-settings /opt/factorio/data/server-settings.json

Re: [16.36] Headless Dependancy issues-Centos7

Posted: Tue May 01, 2018 8:32 pm
by RaumSchnee
After working on this for a few more hours(and after some sleep) I have figured out what i was doing wrong. I feel so stupid. I had forgotten to put "--" in front of an argument for setting the exec path. I am so dumb.

Just in case other have the same issue, ill post my working systemd file at the bottom.

Follow the directions found here to solve the GLIBC 2.18 Dependancy error: How to get Cento7 to play nice with GLIBC 2.18

then change your systemd service file to this:

Code: Select all

Description=Factorio Headless Server

[Service]
Type=simple
User=root
ExecStart=/opt/glibc-2.18/lib/ld-2.18.so --library-path /opt/glibc-2.18/lib /opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/ServerMap.zip --server-settings /opt/factorio/data/server-settings.json --executable-path /opt/factorio/bin/x64/factorio
make sure to adjust directory paths to reflect your own install