Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
147 user(s) are online (136 user(s) are browsing Forums)

Members: 0
Guests: 147

more...

Support us!

Headlines

 
  Register To Post  

OS4 shared object format: like Linux?
Just popping in
Just popping in


See User information
Hello, I haven't posted here for a while.

I'm kicking around the idea of trying to get Rust to cross compile to OS 4 and then see about getting Wasmer to run on it. One dependency that seems to be hard to avoid is that the WASI ABI for Wasmer uses shared objects in a POSIX-style format. If there is a query capable symbol exporter for an OS 4 shared library, that might be another option.

Another hard-to-avoid dependency is that the Wasmer sandbox environment is strictly little-endian. This means that anything accessible outside of the sandbox will need to be endian swapped to interface to the OS.

That said, I haven't learned to program in Rust yet so don't get your hopes up of having a glut of software written for Wasmer at this time.

Go to top
Re: OS4 shared object format: like Linux?
Home away from home
Home away from home


See User information
@Samurai_Crow

Rust is written in Rust, so the first step will be to make Rust cross compiler, so that you can build rust for AmigaOS using Linux.

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: OS4 shared object format: like Linux?
Home away from home
Home away from home


See User information
@Samurai_Crow

https://doc.rust-lang.org/nightly/rustc/platform-support.html

So Rust does support “powerpc-unknown-linux-gnu”, (PowerPC Linux (kernel 2.6.32, glibc 2.11))

There is dependencies on glibc, we currently do not have glibc, we have newlib and clib, so that is big dependency that might need to be ported. (if clib / newlib can not be used.)

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: OS4 shared object format: like Linux?
Just popping in
Just popping in


See User information
Rust uses LLVM as a backend and optimizer. It doesn't specifically use GLibC unless you are using the Linux backend. It does need to be able to compile LLVM in C++20 or so.

Go to top
Re: OS4 shared object format: like Linux?
Home away from home
Home away from home


See User information
@Samurai_Crow

"shared object format", Yes its standard ELF format, used by many different operating systems.

I was suggested it can be used as plugins, so I guess dynlink at runtime also works, not just when your start program.

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: OS4 shared object format: like Linux?
Home away from home
Home away from home


See User information
@Samurai_Crow

I’m pretty sure LLVM and C++20 is not supported, I do remember they where trying to update it (newlib/clib) to C++11 standards, but I guess C++20 that’s most stuff in glibc .

(NutsAboutAmiga)

Basilisk II for AmigaOS4
AmigaInputAnywhere
Excalibur
and other tools and apps.
Go to top
Re: OS4 shared object format: like Linux?
Just popping in
Just popping in


See User information
GCC 10 and LibStdC++ can do it if it's up to date. The LLVM equivalent to LibStdC++ is LibC++ and it's as much of a pain to port as LibStdC++.

Go to top
Re: OS4 shared object format: like Linux?
Home away from home
Home away from home


See User information
@Samurai_Crow

The latest gcc we have available (as beta) is 8.4.0 (https://dl.bintray.com/sba1/adtools-na ... ls-os4-8-20200408-704.lha)

But i don't know if anyone is using that already (I didn't even know that there was a new version, i still use 8.3.0)

Go to top
Re: OS4 shared object format: like Linux?
Just popping in
Just popping in


See User information
Thanks Raziel. I would have had to figure out a way to split endians along the lines of a sandbox if I tried to do it on AmigaOS 4.1FE anyway.

Go to top

  Register To Post

 




Currently Active Users Viewing This Thread: 3 ( 0 members and 3 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project