Hi Ivan, Yes, I still try to build famous projects by gollvm but there are still some troubles (such as https://groups.google.com/d/msg/golang-nuts/2fIk7hbbYJc/zIh3B4tbAAAJ ) The trouble mentioned here is gccgo compatibility of reflect2 (a package imported by k8s). The developers of reflect2 give an imperfect solution ( https://github.com/modern-go/reflect2/pull/10) to avoid linkage errors. I think this patch may help to build k8s.
On Wednesday, July 29, 2020 at 11:56:11 AM UTC+8, Ivan Serdyuk wrote: > > Yuan, > are you still working on gollvm based port of k8s? > > Ivan > > On Saturday, July 20, 2019 at 5:32:03 AM UTC+3 Yuan Ting wrote: > >> OK, I will check out the reflect2 package and take a look. Thanks a lot >> for your direction! >> >> Best, >> Ting >> >> On Friday, July 19, 2019 at 10:30:32 PM UTC+8, Ian Lance Taylor wrote: >>> >>> On Fri, Jul 19, 2019 at 1:11 AM Yuan Ting <yuan...@ict.ac.cn> wrote: >>> > >>> > Sorry to have troubled you again, I found that many famous Go >>> projects also import github.com/modern-go/reflect2 , such as kubernetes >>> and moby. According to the second paragraph in your explanation, these >>> popular projects will also failed in compilation. I think this may be a big >>> challenge for gccgo/gollvm's promotion. >>> > >>> > To solve this compiler-sensitive problem, the way I can come up with >>> is replacing all unsafe mechanisms as mentioned above in reflect2 to safe >>> or standard mechanisms (and may go against the purpose of reflect2). I'm >>> not familiar with runtime, but is it possible to support the same symbol in >>> gccgo/gollvm style? >>> >>> Simply supporting runtime.typelinks is not enough. The reflect >>> package is closely tied to the compiler implementation. The reflect >>> package is not identical in the gc library and the GoLLVM library. If >>> people need reflect2 to work with GoLLVM, then the only workable >>> option is for the reflect2 authors to write a version of their package >>> that uses the gccgo build tag to build a version that works with >>> GoLLVM. Perhaps you could help them with that. Sorry this isn't very >>> helpful. I don't really understand why people are using the package. >>> >>> Ian >>> >> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/0ae8ba1d-b11f-4d4c-8dc9-f24f75d5fe65o%40googlegroups.com.