Re: ECL and musl

Daniel Kochmański <[email protected]>
Newsgroups gmane.lisp.ecl.general
Message-ID <[email protected]>
Hey,

I'll update bundled GC before next release. One of the valid scenarios 
where bundling GC with ECL makes sense is static linking (and ECL 
supports that – when GC is bundled it is statically linked and none of 
its symbols are exported). I've also found it handy, when I was buidling 
ECL on NetBSD, which shipped only non-threaded build of bdwgc.

Note, that ECL first looks for system GC and if it can be used – it is.

Regards,

Daniel


On 20.10.2017 19:44, Dima Pasechnik wrote:
> The bundled GC is too old; it's not working in the embedded ECL 
> situation on FreeBSD (see https://github.com/ivmai/bdwgc/issues/180 
> for a very fresh fix to this), or in at least one dynamic C library 
> case on OSX I know about (see https://github.com/miguelmarco/libhomfly).
>
> In general, I don't see the value of bundling with ECL an old snapshot 
> of a relatively popular and actively maintained library.
> (removing it is trivial - there is one script from bdwgc/ that is 
> used, and should be copied, the rest can go...)
>
> Just my 0.02c.
> Dima
>
>
>
>
> On Thu, Oct 12, 2017 at 5:12 PM, Daniel Kochmański 
> <[email protected] <mailto:[email protected]>> wrote:
>
>     Hey,
>
>     your problem is related to bundled libgc. We have some
>     conditionalization for musl, so I'm sure it worked in the past.
>     I'd suggest trying to install libgc from alpine repositories and
>     build ECL against that libgc. If Alpine doesn't have libgc in the
>     repositories, I'd try building upstream bdwgc and linking ECL with
>     it. If it doesn't build, report a bug on bdwgc project, if it does
>     – please let us know here so we'll update bundled libgc to the
>     working version.
>
>     Best regards,
>
>     Daniel
>
>
>     On 12.10.2017 18:03, Lucas Ramage wrote:
>>     Hello,
>>
>>     I am attempting to package ecl for alpine linux and I am having
>>     troubles compiling against musl.
>>
>>     Building ecl_min...
>>
>>     .//libeclgc.a(mach_dep.o): In function `GC_with_callee_saves_pushed':
>>
>>     /root/ecl-16.1.3/src/bdwgc/mach_dep.c:245: undefined reference to
>>     `getcontext'
>>
>>     collect2: error: ld returned 1 exit status
>>
>>     make[1]: *** [Makefile:224: ecl_min] Error 1
>>
>>     make[1]: Leaving directory '/root/ecl-16.1.3/build'
>>
>>     make: *** [Makefile:72: all] Error 2
>>
>>     ​
>>     I tried `make CFLAGS='-DNO_GETCONTEXT'`​ but that did not work
>>     either.
>>
>>     Has anyone successfully built ecl using musl?
>>
>>
>>     -- 
>>     Regards,
>>
>>     Visit online journal <https://lramage94.github.io/>
>>
>>     	
>>
>>     *Lucas Ramage* / Software Engineer
>>     [email protected]
>>     <mailto:[email protected]> / (941) 404-6794
>>     <tel:%28941%29%20404-6794>
>>
>>     *PGP Fingerprint* / Learn More <https://emailselfdefense.fsf.org/en/>
>>     EAE7 45DF 818D 4948 DDA7 0F44 F52A 5A96 7B9B 6FB7
>>     <https://pgp.mit.edu/pks/lookup?op=get&search=0xF52A5A967B9B6FB7>
>>
>>     *Visit online journal*
>>     http://lramage94.github.io <https://lramage94.github.io/>
>>
>>     Github <https://github.com/lramage94>Linkedin
>>     <https://www.linkedin.com/in/lramage94>
>>
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.