Re: open_dll on Linux?
- Posted by jeremy (admin) Sep 09, 2009
- 1442 views
Please don't over do with open_dll() that kind of problems should be solved by installation scripts creating symbolic link as needed. Euphoria should not try to solve all linux quirks.
The problem is a lot of programs may be installed in user land and not have the ability to alter /usr/lib, /lib symlinks.
What I did to solved the problem in fedora 11 was no big deal. I just used find command to locate libm* then change the source according to my found results, but I would have better done by creating a symbolic link, which is not a big deal too.
That is, if you have the source. What about a bound or translated application that needs to run on a wide variety of Linux distros? Or source that you want to easily work on Windows, OS X, SunOS, FreeBSD, NetBSD, OpenBSD, Fedora, Debian, Gentoo and ArchLinux w/o change? (euWeb will work on all those platforms w/o change BTW).
I think its better that way than making euphoria interpreter too complex.
Yes, simplicity is king, there has to be a good balance between functionality and simplicity though. Where that is, is decided all the time, such as this thread with open_dll(). I'm not sure where the balance is. The changes I suggested, however, would affect a normal open_dll() call. You could still do open_dll("libm.so") w/no issue, or if you wanted to produce a binary w/o source, you could make things more platform independent via open_dll("m", { 1, 2, 3 })
Jeremy