-
Notifications
You must be signed in to change notification settings - Fork 85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expression of Interest (Linux) #8
Comments
Okay, I'll do it as soon as I'll be back home (in about 3 days). If I forget about it, please comment this post again ^^ thanks. |
Hi, just a friendly "bump" to remind you @montoyo 😄 |
Just commenting to show you that there are at least two people desperately waiting for a linux build. |
Alright guys. I'm finishing up something and I'll try to do it today. If I don't post any news tomorrow at 5am (France's time) then kill me ;) |
Nah no one will kill you lol Its more to show that at least one (now two) people would be interested in linux capability for your mods thats all mate. Usually when someone quotes a time its best if they state the time zone (UTC) they are in. For example when you made your comment that was (approx) 8.55pm (UTC+10). If anyone else is watching this issue what @montoyo meant was 5am (UTC+2) |
Okay :D |
Just a gentle "bump" to see how your getting on |
Is there something that I can do to help @montoyo ? Not trying to be pushy but the last comment was 10 days ago with your success with JCEF for linux x64 |
Hello Hello... :)
Anyway, here's a little screenshot: |
This is a little bit of a worry (only for security reasons). Couldn't minecraft (java) be executed with a "security" type flag? For example
I know exactly whats that like so I hear you |
Just a gentle bump as it's been a month since any sort of update |
Hello, I would like know when you will publish a version stable of JCEF. |
Any news on this @montoyo ? Been a while. |
Hello, we're two years later, everything is fine :) Thanks for your very very very good patience. |
Well I am very keen on seeing about getting this working on Linux if at all possible @montoyo If i don't have to use my Win7 VM for gaming I won't. (bit off topic but if your curious as to how google for "arch pci passthrough" and you'll see it is possible) |
I have gotten a 1.12.2 version to build for linux64 but I was curious if there was a way to get 1.7.10? |
He doesn't plan to support 1.7.10 since backporting from 1.12.2 to 1.7.10 would require a complete rewrite. You should make a pull request since this mod could definitely use linux support. I'm curious to know how you got it working. |
I'd also like to see Linux support. |
@montoyo Can you say my when you release mcef for Linux? |
Dont worry about it then Ill fine some OTHER MOD F U!!! |
Seriously @FrankiMC ? You resort to abuse to someone that is doing this out of their own free will for others enjoyment?! You are an immature ungrateful brat. |
FrankiMC, why did not you insult people on your Askubuntu's 1139927 post as well since you have not had an answer either ? I have reported you. Minecraft community do not want such behavior. montoyo did an incredible job, point. |
Since I'm noticing more activity on here, and the fact that @binary1230's pull request was finally closed, is it safe to assume that linux is now supported, or is close to being supported? If not, what can I do to help diagnose any remaining issues? |
Got MCEF working on linux 64 bits. However, there's a caveat: the user HAS to modify LD_LIBRARY_PATH on his own... |
So I compiled mcef myself and used it with the latest web displays version, but something is screwed up with cef or multimc. The .pak files can't be found. Just to be clear, the .pak files are indeed in the .minecraft folder. Also, mcefFiles.lst was generated. The exception handling needs to be fixed for that file. Here is the full log. |
@Tank-Missile which env vars need to be exported? |
@spannerman79 LD_LIBRARY_PATH. The mod will display an error if it's not set. Upon setting it, however, the error in the log occurs and the game crashes. |
I'm going to assume you did the following;
|
@spannerman79 Look at the log. |
That log is hastebin - MultiMC use paste.ee - see https://github.com/MultiMC/MultiMC5/blob/develop/api/logic/net/PasteUpload.cpp#L34..L50 And no - you didn't use envars that MultiMC defines. You hard pointed it which could cause an issue - expecially if you move or rename the instance. Hence why I stated $INST_MC_DIR - see https://discordapp.com/channels/132965178051526656/546322531917758466/595522379837472779 If indeed it still doesn't work and will only work in a dev environment then it still needs work..... |
@spannerman79 That's because I copied the log to hastebin. paste.ee only lets the log stay around for a month. It might take longer than a month for @montoyo to take a look at it. I changed the wrapper command to sh -c "export LD_LIBRARY_PATH=$INST_MC_DIR;exec |
@spannerman79 Too busy to write the detailed instruction on how to compile the CEF native for Linux, but it looks like something like this :
Then to use the libraries you built, the "best" way is to actually install some kind of local HTTP server (apache2, nginx or shit like this), write your own config2.json and edit the mcef config file to use the local HTTP server you just set up. Easier: I published the libraries I built. If you clone MCEF 1.20 (the master branch) it will download the linux binaries. @Tank-Missile This happened to me too when using MultiMC and the official Minecraft Launcher. Turns out JCEF is dumb and uses the first directory in java.library.path (and when using MultiMC or the Minecraft launcher, it's the wrong directory!). Anyway, you can fix this by editing getJcefLibPath() in https://github.com/montoyo/mcef/blob/master/src/main/java/org/cef/CefApp.java#L552 |
After patching getJcefLibPath(), it should be crashing.... and I don't know why :/ |
@montoyo How exactly did you patch getJcefLibPath()? There's a patch from 6 years ago that attempts to fix a similar issue I think. Something as important as this should be pushed to master. |
For MCEF's purpose, getJcefLibPath() should return the Minecraft folder, which can be found in MCEF's ClientProxy.ROOT |
You're right. I changed getJcefLibPath() to return ClientProxy.ROOT, and now it crashes without a stack trace. Well, at least I'm finally at this point, so I'm going to see what I can do to figure out what is going on. |
Yeah... and the fact that it works perfectly fine with IntellJ just kills me... |
You may be able to use jdb to debug the JVM. I'm not exactly sure how to use it, but I did figure out how to attach it to the running JVM. Add this to your java arguments:
Launch the game, and then type this in a terminal:
From there, you can use the various commands jdb offers. That's about as much as I understand at the moment, so sorry if this does not help. |
Segmentation fault? Seems to be something from the I don't know much about anything in this field, but I wouldn't be surprised if the java runtime didn't catch a severe exception from a binary file. Im not compiling it manually, just letting the mod download it itself. |
Any updates on this? |
Any updates on this? @montoyo |
I don't think constantly poking him with this question will be of any help. You can see for yourselves that there is no update in repository so there is probably no update on this issue. We should probably accept that author lost interest to the project (or have other things to do) and try to do it ourselves. |
I tried another non-default launcher (TLauncher) and got this output.
I thought it may be the path but it's ok according to inotifywait.
Not sure if this is the same problem and this output just eaten by mojang launcher but it may be the case. Update: Nah, tried to hardcode path and error disappeared but crash still happens. |
Anything new? |
For anybody wondering how to fix this with 1.11b or just a easy fix here are some steps below
|
@Jacobwasbeast I think needing to run Minecraft through WINE to get MCEF working defeats the purpose of native support, which is what we've been waiting all this time for. JCEF is incredibly fragile, and debugging it is nearly impossible. |
@Tank-Missile I see what you mean and getting native support would be great but I feel until a solution is made without any crashes I think wine may be the only method for linux MCEF to work. I also made the comment to help anyone who may not be able to get MCEF to work as I was not able to when I was viewing this issue. |
Reading this whole thing has been super helpful. it's been a while since the last comment, is there any new news as far as getting mcef to work on linux? |
Hi! Well this issue has been open a long time. Hopefully I can put it to rest. I've forked the project and added proper Linux and macOS support. Made a PR so it hopefully gets merged at some point. Here's my release: https://github.com/Ruinscraft/mcef/releases/tag/1.12.2-1.30 I would appreciate any testing or feedback. Thanks! |
@dextonanderson Wow, I can't believe this is happening! Good job! |
Thanks! Let me know if you run into issues. One additional thing I am working on at the moment is releasing binary patches to add the additional proprietary codecs to CEF. Of course, I can't host the final proprietary binaries myself because of licensing issues. My JCEF mirror has the freely licensed binaries. My binary patches will get around the licensing because the end user will use the patches to compile the final binaries themselves (which is allowed by the license). I will provide a Python script so you can patch your CEF binaries easily Will post an update when I finish this project |
I would like to voice my expression of interest of a linux version so i can use your mod WebDisplays natively on linux.
I am willing to test builds for you if/when you want/need it.
My system setup;
Ubuntu 15.04, x64, 16GB ram, i7
Java JDK 8u51
Update:
Since creating this issue my system is now the following;
Arch, x64, 64GB RAM, AMD Ryzen 3900X
AdoptJDK8(LTS)
The text was updated successfully, but these errors were encountered: