Milton » Forums » Linux Support
miotatsu
岩倉 澪
110 posts
1 project

riscy.tv host

#9166 Linux Support
10 months, 4 weeks ago

I think we need a general topic here about Linux support :)

I've decided to help out with porting Milton to Linux, as I'd like to use it on my stream (twitch.tv/miotatsu).

Right now, I have a working Makefile, but Milton doesn't build without errors yet. The patch that was linked in the blog comments seems to be for an older version of Milton and didn't work out, but I manually patched it. Miblo also pointed out that there is an issue on github about linux support (#20). Haven't read that carefully yet.

All my work on Milton will be streamed live. The first Milton stream is archived here:


If anyone else wants to help with Linux support or has any useful information/feedback, let me know :)
abnercoimbre
Abner Coimbre
208 posts
2 projects

Community Manager

#9171 Linux Support
10 months, 3 weeks ago Edited by Abner Coimbre on Nov. 1, 2016, 5:09 a.m.

Miotatsu if you want to cc @handmade_net when you start a stream, we'll typically retweet you. We'd like to get the word out there to help handmade streamers.

Programmer for a certain space agency
miotatsu
岩倉 澪
110 posts
1 project

riscy.tv host

#9173 Linux Support
10 months, 3 weeks ago

Thanks for the tip Abner, I'll keep that in mind for future streams :)
serge_rgb
Sergio González
31 posts
1 project

I'm working on Milton, a paint program with infinite canvas. My mom thinks I'm awesome.

#9233 Linux Support
10 months, 3 weeks ago

This is pretty cool! Please let me know if there's anything I can help with.
miotatsu
岩倉 澪
110 posts
1 project

riscy.tv host

#9248 Linux Support
10 months, 3 weeks ago Edited by 岩倉 澪 on Nov. 5, 2016, 12:45 a.m.

Hey Sergio,

Today we got Milton running on Linux:


I haven't had time to explore the features that we are currently missing yet, but it seems like the program works well!
Most of the Linux platform layer is shimed with IMPL_MISSING as was done in the WIP Mac platform layer.

One thing to note is that I am currently using a GNU compiler specific macro to get the executable path. To support alternative compilers, other implementations will be needed, or the use of this macro can be replaced - either with a global variable that gets initialized with the value from argv[0], or more ideally by reading the command line arguments from /proc/self in the one function that needs it. There might be other ways to get the executable path that I'm not currently aware of, as the Linux interface is pretty big :)
EDIT: I just noticed we compiled with clang++, so clang does support this GNU extension. It might be fine leaving it as is unless you want to support more obscure compilers, clang and gcc are pretty much the only two compilers most everyone uses on linux I believe.

I can open a pull request if you would like what I have now in the official code base. If there are any major missing features that I need to use Milton on stream, I'll implement them, but otherwise I might want to switch gears to other projects on stream. Would you (or anyone else) be willing to take over the Linux development from this point? If not, I'd be willing to finish everything up myself for it.

Cheers
popcorn
N Setobol
15 posts
1 project
Warehouse worker/Programmer
#9258 Linux Support
10 months, 3 weeks ago

I "witness" this and it was "rad"!! I hope this will work with my old laptop and/or raspberry pi. I'm not sure if both has opengl.

github: https://github.com/nsetobol

"I thought what I'd do was, I'd pretend I was one of those deaf-mutes. That way I wouldn't have to have any useless conversations with anybody" -J.D Sailnger
serge_rgb
Sergio González
31 posts
1 project

I'm working on Milton, a paint program with infinite canvas. My mom thinks I'm awesome.

#9296 Linux Support
10 months, 3 weeks ago

Sweet!!

Thanks for the good work! And yes, please open a pull request.

I'm fine supporting just GCC and Clang.

I would be glad to continue with Linux support going forward.

:D
serge_rgb
Sergio González
31 posts
1 project

I'm working on Milton, a paint program with infinite canvas. My mom thinks I'm awesome.

#9297 Linux Support
10 months, 3 weeks ago

popcorn
I "witness" this and it was "rad"!! I hope this will work with my old laptop and/or raspberry pi. I'm not sure if both has opengl.


I don't know anything about the specs for the raspberry pi. I would be happy/surprised if it worked there. Please let me know how it goes with your old laptop. If it doesn't work, it may start working later when I put some effort into lowering the GL requirements.
popcorn
N Setobol
15 posts
1 project
Warehouse worker/Programmer
#9519 Linux Support
10 months ago

Oops I forgot to report back. I guess since it's on an ARM architecture there isn't a intrinsic for ARM so it doesn't compile, oh well, it was worth the try.

github: https://github.com/nsetobol

"I thought what I'd do was, I'd pretend I was one of those deaf-mutes. That way I wouldn't have to have any useless conversations with anybody" -J.D Sailnger