‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Wednesday, March 24, 2021 11:29 PM, cretin1997 via oi-dev 
<[email protected]> wrote:

> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On Wednesday, March 24, 2021 11:03 PM, Bob Friesenhahn 
> [email protected] wrote:
>
> > On Wed, 24 Mar 2021, cretin1997 via oi-dev wrote:
> >
> > > I currently remove the option because I don't know the equivalent for 
> > > Sun's ld. This allowed the compiler to successfully generate a shared 
> > > library file but I didn't test to see if this shared library even work or 
> > > not. I think better ask first before actually push the changes. Yes, of 
> > > course I'm using git, in case any of you ask me about that.
> >
> > Do you actually need this option? This option enables shared
> > libraries to resolve symbols from the program (e.g. using
> > dlopen(),dlsym()) which loaded them. It also causes the executable to
> > expose all of its extern symbols, which will make the program more
> > bloated, and likely less optimized.
> > Solaris and modern Linux defaults are different regarding default
> > symbol visibility. Linux has become more restrictive.
> > Bob
> >
> > Bob Friesenhahn
> > [email protected], http://www.simplesystems.org/users/bfriesen/
> > GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
> > Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt
> > oi-dev mailing list
> > [email protected]
> > https://openindiana.org/mailman/listinfo/oi-dev
>
> Honestly I don't know. I'm just a completely amateur. The FreeBASIC compiler 
> is not designed with portability in mind but their architecture allow them to 
> be fairly portable, very easy to port to new platforms. I contact the 
> developers asked for Illumos support, as usual with FOSS project they told me 
> to do the porting myself, it's easy, they said. They give me a list of source 
> files I need to edit to adapt the code to the new platform. After many days 
> of trial and error finally I have a working FreeBASIC compiler on 
> OpenIndiana, possible to generate working binary. But the problem is I didn't 
> test the compilation of shared library. So when I try to compile one, it 
> failed immediately.
>
> I know the Solaris linker is what caused all of the trouble. FreeBASIC 
> expects a GNU linker. This time is the same. The Solaris ld doesn't support 
> --export-dynamic.
>
> I adapt the code for Solaris by blindly translate from the Linux ones. I 
> don't understand the internal working of the compiler. If will much better if 
> the developers do the porting themselves. But, you already know, when you 
> want something and you go to the developers of a FOSS project, they don't 
> care if you really have the ability to do it or not but will always said this 
> famous statement: do it yourself, you can submit the code to us. This 
> including this OpenIndiana, too. And you think what I could do with it? I 
> really do it myself, without assistant from them, no one to ask when you have 
> questions, no one at all, and they have not even merged my pull request 
> (contains fixes for dealing with the Solaris linker).
>
> Sometimes I really hope I'm rich. I will dump the FOSS software into the 
> trash can and buy commercial ones. At least, I will have someone to answer to 
> me. But it's just my own delusional. I'm unemployed for more than 5 yrs.
>
> Put this shit aside, what I do is I just removed the problematic option. 
> FreeBASIC does turn on it option for Linux. I don't know what it does, nor I 
> wanted to know, I only wanted to know the equivalent option for the Solaris 
> linker. If no such equivalent option available, does the shared library 
> produced by FreeBASIC with --export-dynamic removed work? What is the side 
> effect if without --export-dynamic? This is the only thing I wanted to know! 
> The one most qualified to answer such question should be the FreeBASIC 
> developers, but, as you already known... do it yourself and you could submit 
> the code to us!
>
> Sent with ProtonMail Secure Email.
>
> oi-dev mailing list
> [email protected]
> https://openindiana.org/mailman/listinfo/oi-dev

I don't want to bad mouth about them. They are just the same as any other FOSS 
project, including this OpenIndiana. They indeed did an amazing job, giving a 
too small development team and too small user base. I don't blame them. They 
worked for free after all!

Amending to the previous lengthy but no useful information email, I want to add 
that after I removed --export-dynamic I actually could have the compiler to 
successfully generated a shared library (.so file) for me. The only problem is 
I don't know if this shared library would even work nor the side effect of 
removing --export-dynamic.

My github repo: https://github.com/CretinHo/fbc

Checkout the branch solaris-fix to see my latest work (nothing serious here, 
though, please don't laugh because it's too trivial).


Sent with ProtonMail Secure Email.

_______________________________________________
oi-dev mailing list
[email protected]
https://openindiana.org/mailman/listinfo/oi-dev

Reply via email to