Search
1:53:56
drmeister
Ok, linking the llvm libunwind takes me back to this...
1:53:58
drmeister
https://www.irccloud.com/pastebin/58Uev7uP/
1:54:17
drmeister
It is linking the /opt/clasp/lib/libunwind
1:55:26
drmeister
Those are not the symbols we are looking for...
1:55:28
drmeister
https://www.irccloud.com/pastebin/ishcIrEk/
1:55:41
drmeister
Checking header file.
2:11:29
drmeister
We are getting this header...
2:11:45
drmeister
"/usr/include/x86_64-linux-gnu/libunwind.h"
2:27:27
drmeister
I think the llvm unwind header is here? /opt/clasp/lib/clang/13.0.0/include/unwind.h
2:27:40
Bike
unwind.h is a different header, because nothing is simple
2:28:03
drmeister
It's not the one we want?
2:28:13
drmeister
There is no /opt/clasp/**/libunwind.h
2:28:15
Bike
No, it has the itanium exception handling abi, iirc
2:28:31
Bike
yeah, i don't know why that doesn't exist, because that file is in the repo
2:28:39
Bike
https://github.com/llvm/llvm-project/blob/main/libunwind/include/libunwind.h
2:29:12
drmeister
Damn it?!? What the shnoz?
2:32:13
drmeister
What do you recommend?
2:32:26
Bike
Well I have no idea why the header doesn't show up in /opt/clasp
2:32:32
Bike
it's just a file, it doesn't have to be built or anything
2:32:55
Bike
I don't think I installed /opt/clasp on hermes
2:49:14
Bike
drmeister: specifying LD_LIBRARY_PATH as di bella suggested lets me run the interpreter, at least
2:49:20
Bike
not sure how to get the actual build to go from there
2:52:24
Bike
i guess i can just throw it in the wscript
2:53:07
drmeister
How about I put the header file into clasp's source tree for now. clasp/include/external/llvm-libunwind/libunwind.h
2:56:57
Bike
i put -L/opt/clasp/lib in but that didn't help. I guess I need to add it to ldconfig or whatever
3:05:09
beach
Good morning everyone!
5:41:45
drmeister
::notify Bike How did you get it to build? I can't get it to build.
5:41:45
Colleen
drmeister: Got it. I'll let Bike know as soon as possible.
12:47:10
Colleen
Bike: drmeister said 7 hours, 5 minutes ago: How did you get it to build? I can't get it to build.
12:47:13
Bike
drmeister: get what to build
12:50:53
drmeister
You don't have USE_LIBUNWIND defined.
12:52:54
Bike
seriously, what are you talking about building here
12:58:15
drmeister
clasp - I compared your wscript file to mine.
12:58:35
drmeister
In emacs use M-x ediff
12:58:46
Bike
i didn't. it can only build the interpreter
13:00:14
Bike
because the runtime system doesn't know about /opt/clasp/lib, i guess
13:00:23
drmeister
Compare ~bike/src/clasp/wscript to ~su-chris/Development/src/clasp/wscript.
13:00:36
drmeister
I set LD_LIBRARY_CONFIG
13:00:53
drmeister
I can build the interpreter and start compiling code but I get a weird runtime error that other people report.
13:01:33
drmeister
If we got this working we could build libunwind statically and link it statically - I think
13:01:40
drmeister
That would avoid LD_LIBRARY_CONFIG
13:02:13
Bike
i've been wondering if we can't just skip some of this and use the unw_ functions in whatever libunwind libgcc uses, if they exist
13:02:15
drmeister
export LD_LIBRARY_CONFIG=/opt/clasp/lib
13:02:19
Bike
because this is becoming a serious hassle
13:02:33
drmeister
It's a hassle until it works.
13:02:59
Bike
it's still a hassle. the build process is probably the worst part of clasp right now and i don't want to make it even worse
13:03:34
drmeister
It's not going to be worse. It's a few configuration switches. Let's just see if we can get this working and then decide.
13:04:07
drmeister
From the discord discussion there appears to be a bug in mixing clang with gcc libunwind - do you agree?
13:04:20
Bike
seems to be so, but di bella hasn't really elaborated
13:04:58
drmeister
Going all the way with llvm libunwind works on the mac and it almost works on linux except for this new problem.
13:05:07
drmeister
I'm building to reproduce the new problem to show you.
13:05:45
drmeister
If the new problem is as bad as the bug with gcc libunwind/clang then we might be effed with clang and libunwind on linux.
13:06:07
Bike
this is so ridiculous. libunwind is just a library, we ought to be able to use it
13:06:18
drmeister
Check if there are unw_ functions in whatever libunwind libgcc uses.
13:06:46
Bike
libunwind: __unw_add_dynamic_fde: bad fde: FDE is really a CIE
13:07:06
drmeister
export LD_LIBRARY_PATH=/opt/clasp/lib
13:07:19
Bike
that's why it didn't just die immediately
13:07:39
Bike
which is what it was doing without LD_LIBRARY_PATH
13:07:58
drmeister
Here's the wonderful new problem I get...
13:08:00
drmeister
https://www.irccloud.com/pastebin/FpDV6jHu/
13:08:15
drmeister
__unw_add_dynamic_fde: bad fde: FDE is really a CIE
13:08:25
drmeister
What a twist - the FDE is really a CIE!
13:27:36
drmeister
I posted the same question in #jit
13:27:58
drmeister
Are there unw_ functions in libgcc?
13:28:24
drmeister
Does no one use this library?
13:28:29
Bike
there's no libunwind.h header in it, i don't think
13:28:38
Bike
does no one use libunwind? i don't know, it is kind of obscure
13:28:51
Bike
i mean everyone uses it for C++ unwinding i think, but not so much directly
13:31:12
drmeister
Well, let's see what the discord people come up with.
13:31:33
drmeister
Because I don't see any way forward on linux at the moment.
13:36:31
drmeister
Well, hang on - I read the bug report a few more times...
13:36:55
drmeister
https://bugs.llvm.org/show_bug.cgi?id=44074