It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Installed spacechem on 64-bit Debian (successfully) but when I go to run ./start.sh the game doesn't start and I get the following error messages:

Unhandled Exception: System.Runtime.Serialization.SerializationException: Type Newtonsoft.Json.JsonReaderException is not marked as Serializable.

Server stack trace:
at System.Runtime.Serialization.Formatters.Binary.BinaryCommon.CheckSerializable (System.Type type, ISurrogateSelector selector, StreamingContext context) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.GetObjectData (System.Object obj, System.Runtime.Serialization.Formatters.Binary.TypeMetadata& metadata, System.Object& data) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObject (System.IO.BinaryWriter writer, Int64 id, System.Object obj) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectInstance (System.IO.BinaryWriter writer, System.Object obj, Boolean isValueObject) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteQueuedObjects (System.IO.BinaryWriter writer) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectGraph (System.IO.BinaryWriter writer, System.Object obj, System.Runtime.Remoting.Messaging.Header[] headers) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize (System.IO.Stream serializationStream, System.Object graph, System.Runtime.Remoting.Messaging.Header[] headers) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize (System.IO.Stream serializationStream, System.Object graph) [0x00000] in <filename unknown>:0
at System.Runtime.Remoting.RemotingServices.SerializeExceptionData (System.Exception ex) [0x00000] in <filename unknown>:0

Exception rethrown at [0]:

at (wrapper xdomain-invoke) System.AppDomain:ExecuteAssembly (string,System.Security.Policy.Evidence,string[])
at (wrapper remoting-invoke-with-check) System.AppDomain:ExecuteAssembly (string,System.Security.Policy.Evidence,string[])
at #=q9RvpkXA50$jg9YekHgA0N4noz_omAqQUJLXN3JuW6cg=.#=q_Zs2thSz3i1I2X$SiRjfRg== (System.String[] #=qUy6XDEjx8tsUIjd0njaI8g==) [0x00000] in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.Runtime.Serialization.SerializationException: Type Newtonsoft.Json.JsonReaderException is not marked as Serializable.

Server stack trace:
at System.Runtime.Serialization.Formatters.Binary.BinaryCommon.CheckSerializable (System.Type type, ISurrogateSelector selector, StreamingContext context) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.GetObjectData (System.Object obj, System.Runtime.Serialization.Formatters.Binary.TypeMetadata& metadata, System.Object& data) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObject (System.IO.BinaryWriter writer, Int64 id, System.Object obj) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectInstance (System.IO.BinaryWriter writer, System.Object obj, Boolean isValueObject) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteQueuedObjects (System.IO.BinaryWriter writer) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.WriteObjectGraph (System.IO.BinaryWriter writer, System.Object obj, System.Runtime.Remoting.Messaging.Header[] headers) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize (System.IO.Stream serializationStream, System.Object graph, System.Runtime.Remoting.Messaging.Header[] headers) [0x00000] in <filename unknown>:0
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize (System.IO.Stream serializationStream, System.Object graph) [0x00000] in <filename unknown>:0
at System.Runtime.Remoting.RemotingServices.SerializeExceptionData (System.Exception ex) [0x00000] in <filename unknown>:0

Exception rethrown at [0]:

at (wrapper xdomain-invoke) System.AppDomain:ExecuteAssembly (string,System.Security.Policy.Evidence,string[])
at (wrapper remoting-invoke-with-check) System.AppDomain:ExecuteAssembly (string,System.Security.Policy.Evidence,string[])
at #=q9RvpkXA50$jg9YekHgA0N4noz_omAqQUJLXN3JuW6cg=.#=q_Zs2thSz3i1I2X$SiRjfRg== (System.String[] #=qUy6XDEjx8tsUIjd0njaI8g==) [0x00000] in <filename unknown>:0



Seems like it is related to this issue on OSX:
https://github.com/leafi/fix-spacechem-os-x/issues/9

Has anyone encountered this on Linux and found a fix?
No posts in this topic were marked as the solution yet. If you can help, add your reply
avatar
bballstatue: Installed spacechem on 64-bit Debian (successfully) but when I go to run ./start.sh the game doesn't start and I get the following error messages:
(snip)
Seems like it is related to this issue on OSX:
https://github.com/leafi/fix-spacechem-os-x/issues/9

Has anyone encountered this on Linux and found a fix?
Yes, and thanks! I had the exact same error (well, didn't compare letter for letter, but sure looks the same) in 64 bit Gentoo, and going from the inspirations in your link I found that I was missing a 32bit version of sdl-mixer.

For you:
1. Check that you have all the packages installed that are listed on the GOG game page.
2. If you already did, then open ~/GOG Games/Spacechem/game/Tao.Sdl.dll.config
In this file you see a list of "dlls" - for each linux filename check that you have that file present on your system in a 32bit folder (e.g. in Gentoo it's /usr/lib32). If any are missing then find out which package provides the file in Debian and install those.

Good luck!
I have the same problem. Seems to be difficult to install 32 bits lib on my system... :(
Last I checked (not recently), the Linux version did not include the expansion, so you'd want to install the Windows version with Wine. Doesn't matter: it is a .net game so you can install Mono from your Linux distro and run the game with it. You'll need the relevant 64-bit libraries (SDL etc.) but no 32-bit ones.
Post edited March 12, 2017 by odd_customer
Looks like there are some compatibility issues with .net DLLs distributed with SpaceChem (Windows version) and the version of Mono in Debian testing & unstable (currently 4.6.2.7+dfsg-1). I had to remove the Mono.Security.dll that came with the game, thus causing the distro version to be loaded instead. Didn't have that problem with Newtonsoft.Json.dll though: the one that came with the game works fine here.
avatar
bballstatue: Installed spacechem on 64-bit Debian (successfully) but when I go to run ./start.sh the game doesn't start and I get the following error messages:
<snip>

Has anyone encountered this on Linux and found a fix?
avatar
MaxenceG2M: I have the same problem. Seems to be difficult to install 32 bits lib on my system... :(
Hey bballstatue and MaxenceG2M,

The issue might be caused by the outdated libraries bundled along with the game. Try removing the "lib" subfolder in the game installation directory, then install the following dependencies of the game:

libc6:i386 libasound2:i386 libasound2-data:i386 libasound2-plugins:i386 libcaca0:i386 libjpeg-turbo8:i386 libpng12-0:i386 libtiff5:i386 libncurses5:i386 libsqlite3-0:i386 libsdl1.2debian:i386 libsdl-mixer1.2:i386 libsdl-image1.2:i386 libgdiplus:i386

Should you have any other questions, please let me know or contact our support at http://support.gog.com.
avatar
odd_customer: Looks like there are some compatibility issues with .net DLLs distributed with SpaceChem (Windows version) and the version of Mono in Debian testing & unstable (currently 4.6.2.7+dfsg-1). I had to remove the Mono.Security.dll that came with the game, thus causing the distro version to be loaded instead. Didn't have that problem with Newtonsoft.Json.dll though: the one that came with the game works fine here.
Hey odd_customer,

I believe the game requires a very specific Mono runtime version, so installing just any version from your distribution repository will not work.
Post edited March 13, 2017 by linuxvangog
I have completed the game on Debian using the Windows version, installed via Wine but executed with Mono from Debian (64-bit). Doesn't seem too picky about version or platform. YMMV.
avatar
bballstatue: Installed spacechem on 64-bit Debian (successfully) but when I go to run ./start.sh the game doesn't start and I get the following error messages:
<snip>

Has anyone encountered this on Linux and found a fix?
avatar
linuxvangog:
avatar
MaxenceG2M: I have the same problem. Seems to be difficult to install 32 bits lib on my system... :(
avatar
linuxvangog: Hey bballstatue and MaxenceG2M,

The issue might be caused by the outdated libraries bundled along with the game. Try removing the "lib" subfolder in the game installation directory, then install the following dependencies of the game:

libc6:i386 libasound2:i386 libasound2-data:i386 libasound2-plugins:i386 libcaca0:i386 libjpeg-turbo8:i386 libpng12-0:i386 libtiff5:i386 libncurses5:i386 libsqlite3-0:i386 libsdl1.2debian:i386 libsdl-mixer1.2:i386 libsdl-image1.2:i386 libgdiplus:i386

Should you have any other questions, please let me know or contact our support at http://support.gog.com.
avatar
odd_customer: Looks like there are some compatibility issues with .net DLLs distributed with SpaceChem (Windows version) and the version of Mono in Debian testing & unstable (currently 4.6.2.7+dfsg-1). I had to remove the Mono.Security.dll that came with the game, thus causing the distro version to be loaded instead. Didn't have that problem with Newtonsoft.Json.dll though: the one that came with the game works fine here.
avatar
linuxvangog: Hey odd_customer,

I believe the game requires a very specific Mono runtime version, so installing just any version from your distribution repository will not work.
Hey linuxvangog,

Thanks for the tip. Looks like removing the game's lib directory worked! I can at least start the game now. Will report if I encounter any more errors, but looks good for now.
avatar
bballstatue: Installed spacechem on 64-bit Debian (successfully) but when I go to run ./start.sh the game doesn't start and I get the following error messages:
<snip>

Has anyone encountered this on Linux and found a fix?
avatar
linuxvangog:
avatar
MaxenceG2M: I have the same problem. Seems to be difficult to install 32 bits lib on my system... :(
avatar
linuxvangog: Hey bballstatue and MaxenceG2M,

The issue might be caused by the outdated libraries bundled along with the game. Try removing the "lib" subfolder in the game installation directory, then install the following dependencies of the game:

libc6:i386 libasound2:i386 libasound2-data:i386 libasound2-plugins:i386 libcaca0:i386 libjpeg-turbo8:i386 libpng12-0:i386 libtiff5:i386 libncurses5:i386 libsqlite3-0:i386 libsdl1.2debian:i386 libsdl-mixer1.2:i386 libsdl-image1.2:i386 libgdiplus:i386

Should you have any other questions, please let me know or contact our support at http://support.gog.com.
avatar
odd_customer: Looks like there are some compatibility issues with .net DLLs distributed with SpaceChem (Windows version) and the version of Mono in Debian testing & unstable (currently 4.6.2.7+dfsg-1). I had to remove the Mono.Security.dll that came with the game, thus causing the distro version to be loaded instead. Didn't have that problem with Newtonsoft.Json.dll though: the one that came with the game works fine here.
avatar
linuxvangog: Hey odd_customer,

I believe the game requires a very specific Mono runtime version, so installing just any version from your distribution repository will not work.
Hi linuxvangog,

Thank for your help. A new fresh installation of my Debian System solve a lot of problem ;)
Now with the good apt-get, it works :D

Thank again
high rated
On Ubuntu 18.04, there are two small differences:

- the libpng version is libpng16-16
- libasound2-data is common to all architectures

so the following command line should be used instead:

$ sudo apt install libc6:i386 libasound2:i386 libasound2-plugins:i386 libcaca0:i386 libjpeg-turbo8:i386 libpng16-16:i386 libtiff5:i386 libncurses5:i386 libsqlite3-0:i386 libsdl1.2debian:i386 libsdl-mixer1.2:i386 libsdl-image1.2:i386 libgdiplus:i386

Also, as noted by odd_customer, this Linux version does not include the expansion (63 Corvi). Is there still a possibility that we'll get an update?