<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:29]
<DaComputerNerd> %tonk
L2[00:00:29] <MichiBot> Darn!
DaComputerNerd! You beat Forecaster's previous record of 2 hours,
6 minutes and 4 seconds (By 11 minutes and 32 seconds)! I hope
you're happy!
L3[00:00:30] <MichiBot> DaComputerNerd's new
record is 2 hours, 17 minutes and 36 seconds! DaComputerNerd also
gained 0.00057 (0.00019 x 3) tonk points for stealing the tonk.
Position #5. Need 0.01111 more points to pass Kodos!
L4[00:03:29]
<Vaur>
%sip
L5[00:03:29] <MichiBot> You drink a spooned
dalekanium potion (New!). The next fork Vaur touches tells them
it's most deeply guarded secret.
L6[00:24:52]
<DaComputerNerd> how deep a secret can a
fork have?
L7[00:24:53]
<DaComputerNerd> %sip
L8[00:24:54] <MichiBot> You drink a fluffy
sky potion (New!). The bottle turns into an apple.
L9[00:25:54]
<Vaur>
%sip
L10[00:25:54] <MichiBot> You drink a runny
grass potion (New!). It tastes bitter.
L11[01:16:15] <lunar_sam> ya know, TS gives
me slightly less metaphysical pain than JS
L12[01:37:47] ⇦
Quits: lordpipe (~ba7888b72@66.109.211.50) (Ping timeout: 189
seconds)
L13[01:40:36] ⇨
Joins: lordpipe (~ba7888b72@66.109.211.50)
L14[02:05:25] ⇨
Joins: SkyClan480
(~skyclan48@024-178-185-215.biz.spectrum.com)
L15[02:16:20] <Michiyo> %tonkout
L16[02:16:20] <MichiBot> I'm sorry
Michiyo, you were not able to beat DaComputerNerd's record of 2
hours, 17 minutes and 36 seconds this time. 2 hours, 15 minutes and
51 seconds were wasted! Missed by 1 minute and 45 seconds!
L17[02:16:25] <Michiyo> fuck.
L18[02:16:26]
<Z0idberg>
The cobra chickens are getting huge
L19[02:16:46]
<Z0idberg>
We're going to have to get them a larger space soon until we can
keep them outside
L21[02:17:05]
<Z0idberg>
Cobra chickens!!!
L22[02:29:04]
<TheChosenSquirrel> LOL I think I bricked
the in game computer
L23[02:30:07]
<TheChosenSquirrel> I think I
unintentionally made a script that opened multiple of a script and
it over loaded the ram
L24[03:09:21] ⇦
Quits: SkyClan480 (~skyclan48@024-178-185-215.biz.spectrum.com)
(Ping timeout: 192 seconds)
L25[03:20:35] <Amanda> as long as you
didb't make it start on boot it should come back up fine
L26[03:20:48] <Amanda> If not, that's a
bug
L27[03:21:09] <Amanda> which might be
reported as "forkbombs brick the computer"
L29[04:03:23] ⇨
Joins: alekso56 (~cax@84.211.63.224)
L30[04:04:07] ⇦
Quits: alekso56_ (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L31[04:35:00] ⇨
Joins: SkyClan480
(~skyclan48@024-178-185-215.biz.spectrum.com)
L32[04:35:03] ⇦
Quits: SkyClan480 (~skyclan48@024-178-185-215.biz.spectrum.com)
(Client Quit)
L33[04:51:49]
<Forecaster> %tonkout
L34[04:51:49] <MichiBot> Dogast!
Forecaster! You beat DaComputerNerd's previous record of 2 hours,
17 minutes and 36 seconds (By 17 minutes and 52 seconds)! I hope
you're happy!
L35[04:51:50] <MichiBot> Forecaster has
stolen the tonkout! Tonk has been reset! They gained 0.002 tonk
points! plus 0.001 bonus points for consecutive hours! (Reduced to
50% because stealing) Current score: 1.304855. Position #2 => #1
(Overtook Vaur)
L36[05:00:00] <Michiyo> %greenshell
Forecaster
L37[05:00:00] <MichiBot> Michiyo: You
can't snipe right now. Try again in 2 hours, 12 minutes and 14
seconds.
L38[05:00:03] <Michiyo> damn
L39[05:12:05] *
Amanda submits to elfi the petition that she's not late to zzzmew,
for she was in space, and space has a funny relationship with time,
therefore she can't be late, slowly doses off while making her
arguments
L40[05:12:20] <Amanda> Night nerds
L41[05:12:24] <Michiyo> Night
L42[05:27:32] ⇨
Joins: alekso56_ (~cax@84.211.63.224)
L43[05:27:58] ⇦
Quits: alekso56 (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L44[06:19:15] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L45[06:40:43] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 192
seconds)
L46[06:49:51] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L47[06:57:29] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 189
seconds)
L48[07:35:35] ⇨
Joins: baschdel (~baschdel@91.137.70.114)
L49[08:16:41] ⇦
Quits: baschdel (~baschdel@91.137.70.114) (Ping timeout: 189
seconds)
L50[08:19:57]
<Vaur>
%tonk
L51[08:19:57] <MichiBot> Darn it! Vaur!
You beat Forecaster's previous record of <0 (By 3 hours, 28
minutes and 7 seconds)! I hope you're happy!
L52[08:19:58] <MichiBot> Vaur's new record
is 3 hours, 28 minutes and 7 seconds! Vaur also gained 0.00347 tonk
points for stealing the tonk. Position #2 => #1. (Overtook
Forecaster)
L53[09:02:28] ⇨
Joins: baschdel (~baschdel@91.137.70.114)
L54[09:05:51] ⇦
Quits: baschdel (~baschdel@91.137.70.114) (Ping timeout: 186
seconds)
L55[09:22:23] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L56[09:23:19]
<Vaur>
%sip
L57[09:23:19] <MichiBot> You drink a shiny
dilithium potion (New!). The bottle turns into an apple.
L58[09:58:55] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 189
seconds)
L59[09:59:29] ⇨
Joins: alekso56 (~cax@84.211.63.224)
L60[10:00:58] ⇦
Quits: alekso56_ (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L61[10:14:01] ⇨
Joins: baschdel (~baschdel@91.137.70.114)
L62[10:37:15]
<Forecaster> %sip
L63[10:37:15] <MichiBot> You drink a smelly
octiron potion (New!). Forecaster feels the need to use
"%fling".
L64[10:37:27]
<Forecaster> %fling
L65[10:37:27] <MichiBot> Forecaster:
Invalid arguments. %fling Target:string [Item:string]
L66[10:37:50]
<Forecaster> sigh, I need to make that
take a random target, why did I use that in a potion
effect...
L67[10:47:13] ⇦
Quits: baschdel (~baschdel@91.137.70.114) (Ping timeout: 192
seconds)
L68[11:15:49]
<Vaur>
%sip
L69[11:15:49] <MichiBot> You drink a basic
avesmingo potion (New!). As Vaur drinks the potion they become the
target of a wad of llama spit! They successfully evaded it with a
18 vs DC 12!
L70[11:27:43] ⇨
Joins: ThePiGuy24
(~ThePiGuy2@host-92-17-122-20.as13285.net)
L71[11:27:56] ⇦
Quits: TPG24 (~ThePiGuy2@host-92-17-122-20.as13285.net) (Ping
timeout: 189 seconds)
L72[11:37:00] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L73[11:43:29] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 189
seconds)
L74[11:58:56] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L75[11:59:12]
<Forecaster> %tonkout
L76[11:59:12] <MichiBot> Yippee!
Forecaster! You beat Vaur's previous record of 3 hours, 28
minutes and 7 seconds (By 11 minutes and 7 seconds)! I hope you're
happy!
L77[11:59:13] <MichiBot> Forecaster has
stolen the tonkout! Tonk has been reset! They gained 0.003 tonk
points! plus 0.002 bonus points for consecutive hours! (Reduced to
50% because stealing) Current score: 1.310855. Position #2 => #1
(Overtook Vaur)
L79[12:23:57]
<Z0idberg>
To be fair I can understand getting rid of metal playgrounds. I do
not understand getting rid of the wooden ones. They tore ours out
because some dumbest mom doesn't fucking understand pressure
treated wood and persuaded the board that is always dangerous
L80[12:24:56]
<Z0idberg>
I had only ever been decently injured on plastic and metal ones by
the way
L81[12:27:08]
<Z0idberg>
I used to have a steel play set and if you didn't slide down the
slide in the right way your legs would get sliced all the way down
from the edges. Also on hot days it would burn your hands and
everything
L82[12:45:34] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 189
seconds)
L83[12:59:59] ⇨
Joins: baschdel (~baschdel@91.137.70.122)
L84[13:03:13] ⇦
Quits: baschdel (~baschdel@91.137.70.122) (Ping timeout: 192
seconds)
L85[13:37:15]
<lunar_sam>
i will never financially recover from this
L86[13:37:24]
<lunar_sam>
i ordered an RX 6700 XT
L87[13:44:01] <Izaya> would've bought a
bike instead tbh
L88[13:49:33] <lunar_sam> i joke but the
prices have gone down a lot.
L89[13:49:49] <lunar_sam> ...like, within
24 hours of when i last checked even
L90[13:54:42] <Izaya> yeah I hear the
prices are going down in the US
L91[13:54:45] <Izaya> still $1500
here
L92[14:26:38] ⇨
Joins: baschdel
(~baschdel@2a02:6d40:3667:bf01:e885:8a7e:f622:9266)
L93[14:30:41] ⇦
Quits: baschdel (~baschdel@2a02:6d40:3667:bf01:e885:8a7e:f622:9266)
(Ping timeout: 189 seconds)
L94[14:37:21] ⇦
Quits: DBotThePony (~Thunderbi@31.220.170.28) (Remote host closed
the connection)
L95[14:37:26] ⇨
Joins: DBotThePony (~Thunderbi@31.220.170.28)
L96[14:38:22] ⇦
Quits: DBotThePony (~Thunderbi@31.220.170.28) (Remote host closed
the connection)
L97[14:38:25] ⇨
Joins: DBotThePony (~Thunderbi@31.220.170.28)
L98[14:38:54] ⇦
Quits: DBotThePony (~Thunderbi@31.220.170.28) (Remote host closed
the connection)
L99[14:38:57] ⇨
Joins: DBotThePony (~Thunderbi@31.220.170.28)
L100[14:51:24] ⇦
Quits: DBotThePony (~Thunderbi@31.220.170.28) (Remote host closed
the connection)
L101[14:51:28]
⇨ Joins: DBotThePony (~Thunderbi@31.220.170.28)
L102[14:52:10] ⇦
Quits: alekso56 (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L103[14:52:19]
<Forecaster> %sip
L104[14:52:19] <MichiBot> You drink a
bubbly emerald potion (New!). Forecaster gains one research point.
Forecaster now has 1 point. (Rem. uses: 1)
L105[14:52:24]
<Forecaster> woo
L106[14:53:02]
⇨ Joins: alekso56 (~cax@84.211.63.224)
L107[14:53:05] ⇦
Quits: DBotThePony (~Thunderbi@31.220.170.28) (Remote host closed
the connection)
L108[14:53:09]
⇨ Joins: DBotThePony (~Thunderbi@31.220.170.28)
L109[15:11:33]
⇨ Joins: alekso56_ (~cax@84.211.63.224)
L110[15:12:58] ⇦
Quits: alekso56 (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L111[15:25:09]
<Vaur>
%tonk
L112[15:25:09] <MichiBot> Woah! Vaur! You
beat Forecaster's previous record of <0 (By 3 hours, 25 minutes
and 56 seconds)! I hope you're happy!
L113[15:25:10] <MichiBot> Vaur's new
record is 3 hours, 25 minutes and 56 seconds! Vaur also gained
0.00343 tonk points for stealing the tonk. Position #2. Need
0.00153 more points to pass Forecaster!
L114[15:25:23]
<Vaur> %sip
bubbly emerald potion
L115[15:25:23] <MichiBot> You drink a
bubbly emerald potion. Vaur gains one research point. Vaur now has
1 point. (Rem. uses: 0)
L116[15:34:25] ⇦
Quits: alekso56_ (~cax@84.211.63.224) (Ping timeout: 375
seconds)
L117[15:34:35]
⇨ Joins: alekso56 (~cax@84.211.63.224)
L118[15:35:27] <Amanda> %remindme 50m
Adele is done
L119[15:35:27] <MichiBot> I'll tell you
"Adele is done" in 50m at 05/09/2022 04:25:27 PM
L120[15:36:04]
⇨ Joins: baschdel
(~baschdel@2a02:6d40:3667:bf01:e885:8a7e:f622:9266)
L121[15:39:45]
⇨ Joins: flappy
(~flappy@85-156-64-36.elisa-laajakaista.fi)
L122[15:43:50] ⇦
Quits: baschdel (~baschdel@2a02:6d40:3667:bf01:e885:8a7e:f622:9266)
(Ping timeout: 189 seconds)
L123[15:49:43]
⇨ Joins: Hawk777
(~chead@2607:c000:827d:fa00:fed7:70ab:64eb:2e20)
L124[16:06:42] <Amanda> %choose waves; em
or pressure or psychic
L125[16:06:42] <MichiBot> Amanda:
pressure waves
L126[16:12:25]
⇨ Joins: Vexatos
(~Vexatos@port-92-192-76-172.dynamic.as20676.net)
L127[16:12:25]
zsh sets mode: +v on Vexatos
L128[16:25:27] <MichiBot> Amanda REMINDER:
Adele is done
L129[17:11:25] ⇦
Quits: flappy (~flappy@85-156-64-36.elisa-laajakaista.fi) (Ping
timeout: 192 seconds)
L130[17:33:06]
⇨ Joins: RedstoneParkour
(~Thunderbi@2001:1c05:2509:a600:9875:5fac:ef76:1ece)
L131[17:46:23]
<Vaur>
%sip
L132[17:46:23] <MichiBot> You drink a sour
aqua potion (New!). A giant boulder is rolling towards Vaur! They
successfully evaded it with a 20 vs DC 15!
L133[17:47:25]
<Forecaster> nat 20, nice
L134[18:30:52]
<Vaur>
%sip
L135[18:30:53] <MichiBot> You drink a
goopy gold potion (New!). A swinging blade comes flying towards
Vaur from nowhere! They fail to evade it with a 11 vs DC 16 and
takes 1d8 => 6 damage.
L136[18:31:15]
<Forecaster> MichiBot is extra murderous
today
L137[18:31:44]
<Forecaster> %sip
L138[18:31:45] <MichiBot> You drink a
spooned aegisalt potion (New!). Forecaster's nails turn the color
of redstone until they stop thinking about it.
L139[18:49:54] ⇦
Quits: RedstoneParkour
(~Thunderbi@2001:1c05:2509:a600:9875:5fac:ef76:1ece) (Quit:
RedstoneParkour)
L140[18:56:14]
<Vaur>
%sip
L141[18:56:14] <MichiBot> You drink a
warpy sapphire potion (New!). Vaur's favourite hat suddenly
disintegrates.
L142[18:57:39]
<Forecaster> %tonkout
L143[18:57:39] <MichiBot> Fiddlesticks!
Forecaster! You beat Vaur's previous record of 3 hours, 25
minutes and 56 seconds (By 6 minutes and 33 seconds)! I hope you're
happy!
L144[18:57:40] <MichiBot> Forecaster has
stolen the tonkout! Tonk has been reset! They gained 0.003 tonk
points! plus 0.002 bonus points for consecutive hours! (Reduced to
50% because stealing) Current score: 1.316855. Position #1
L145[19:32:40]
⇨ Joins: RedstoneParkour
(~Thunderbi@2001:1c05:2509:a600:d50e:c4c6:bcdc:4b9f)
L146[19:42:01] ⇦
Quits: RedstoneParkour
(~Thunderbi@2001:1c05:2509:a600:d50e:c4c6:bcdc:4b9f) (Quit:
RedstoneParkour)
L147[20:51:46] <lunar_sam> Izaya: jesus
fuck
L148[20:52:03] <lunar_sam> i got my hard
for under $5000
L149[20:52:08] <lunar_sam> 500
L150[20:52:20] <lunar_sam> thanks for
locking up while i typed dino
L151[20:52:40] <lunar_sam> well i guess
under 500 is still under 5000
L152[20:52:43] <lunar_sam> so
whatever
L153[21:53:50]
<Pokey>
holy shizzles I just found OC2 and I am hyped
L154[22:06:05] ⇦
Quits: Pokey (~pokey@vmi238643.contaboserver.net) (Ping timeout:
192 seconds)
L155[22:06:14]
⇨ Joins: Pokey
(~pokey@vmi238643.contaboserver.net)
L156[22:07:33]
<Pokey> the
heck happened there
L157[22:07:48] <Amanda> %choose halucinate
and space or just halucinate
L158[22:07:48] <MichiBot> Amanda: You'll
want to go with "halucinate and space".
L159[22:11:48]
<Forecaster> %tonk
L160[22:11:48] <MichiBot> Dagnammit!
Forecaster! You beat your own previous record of <0 (By 3
hours, 14 minutes and 9 seconds)! I hope you're happy!
L161[22:11:49] <MichiBot> Forecaster's new
record is 3 hours, 14 minutes and 9 seconds! No points gained for
stealing from yourself. (Lost out on 0.00324)
L162[22:12:58] <Hawk777> Yep, OC2’s pretty
amazing looking. I’m not on 1.18 yet but looking forward to it when
I am.
L163[22:36:43]
<Ocawesome101> hrm
L164[22:37:18]
<Ocawesome101> i'm writing an emulator for
a CPU architecture i designed a bit ago, and one of the things i
want to do is make devices (stuff attached to ports / mmio) dynamic
- loaded at startup.
L165[22:37:35]
<Ocawesome101> so i've got code that finds
the symbol `device_open` and calls it and that works
L166[22:37:44]
<Ocawesome101> but it's not exposing a
symbol from my main program that it should be exposing
L167[22:37:47]
<Ocawesome101> how do i make it do
that?
L168[22:38:38] <Hawk777> Context? By
“symbol” is this an ELF symbol? SO files involved? Some other
platform?
L169[22:38:46]
<Ocawesome101> ELF and SO files, yes
L170[22:39:18] <Hawk777> Not building with
-fvisibility=hidden or something?
L171[22:39:23]
<Ocawesome101> no
L172[22:39:46]
<Ocawesome101> just `-shared -fPIC` plus
some headers
L173[22:39:54]
<Ocawesome101> * header inclusion
L174[22:40:05] <Hawk777> Wait, -shared? I
thought that was to make the SO file, but you said it was a symbol
exported from the program that was the problem.
L175[22:40:20] <Hawk777> This is a symbol
exported by the executable and imported by the SO, or vice
versa?
L176[22:40:52]
<Ocawesome101> i want the executable to
find a symbol in the `.so`, and the function defined by that symbol
to be able to call a function in the executable. is there a way to
do that?
L177[22:41:05] <Hawk777> Yeah, I think you
need to add -rdynamic to your compile and link flags when building
the executable.
L178[22:41:28]
<Ocawesome101> it segfaults now :P
progress! thanks
L179[22:41:33] <Hawk777> hahaha well
ok
L180[22:48:22] ⇦
Quits: Vexatos (~Vexatos@port-92-192-76-172.dynamic.as20676.net)
(Quit: Insert quantum chemistry joke here)
L181[22:51:32]
<Ocawesome101> ok, it seems the segfault
happens when calling the function, before any other code gets
run
L182[22:51:56] <lunar_sam> you got source
code?
L183[22:52:15]
<Ocawesome101> one moment
L185[22:55:35]
<Ocawesome101> function calling code is in
`src/devices.c`, shared object code in `src/devices/tty.c`
L186[22:55:41]
<Ocawesome101> not using a Makefile
because... reasons
L187[22:56:52] <Amanda> "Trade
secrets" "4h3m"
L189[22:57:49] <Amanda> %remindme 41m give
Margaret some fighters, take over the northern seaboard
L190[22:57:49] <MichiBot> I'll tell you
"give Margaret some fighters, take over the northern
seaboard" in 41m at 05/09/2022 11:38:49 PM
L191[22:57:57] <Hawk777> Hm… device_open
in tty.c should probably be “int device_open(void) { …” rather than
“int device_open() { …”, but that doesn’t explain the segfault,
that’s just a kind of tidiness thing.
L192[22:58:06] <Hawk777> Is “test”
printed?
L193[22:59:01] <Hawk777> “*(void **)
(&device_open) = dlsym(dlfd, "device_open");” is also
a slightly odd-looking construct to me, I would personally write it
“device_open = (int (*)(void)) dlsym(dlfd,
"device_open");” but again I don’t think that explains
the segfault.
L194[22:59:10]
<Ocawesome101> no, `test` is not
printed
L195[22:59:47]
<Ocawesome101> the `dlopen` manual page
presents `*(void **) (&device_open)` as an equally correct way
to do it - i had it the other way previously
L196[23:00:30] <Hawk777> Huh, TIL.
L197[23:00:45] <Amanda> %remindme 1h28m
take some mining fighters from Radia
L198[23:00:45] <MichiBot> I'll tell you
"take some mining fighters from Radia" in 1h28m at
05/10/2022 12:28:45 AM
L199[23:00:54] <Hawk777> Do you know where
the segfault is (e.g. from GDB)?
L200[23:01:03]
<Ocawesome101> i haven't looked yet
L201[23:01:21] <Hawk777> Wondering whether
it’s in the dlopen, or in the dlsym, or in the function call, or in
the function itself.
L203[23:03:31]
<Ocawesome101> tl;dr it's the function
call
L204[23:03:50] <Hawk777> Looks like it
successfully reaches the function, though, so it’s not the function
pointer or the call itself falling over?
L205[23:04:02]
<Ocawesome101> probably?
L206[23:04:20] <Hawk777> Hm. You’re not
statically linking libc or something like that that would mean you
now have two libcs arguing over printf or something, are you?
L207[23:04:58]
<Ocawesome101> no, no static linking
L208[23:04:58] <Hawk777> Oh wait never
mind I totally misread that backtrace.
L209[23:05:08] <Amanda> Is this running on
OC2 or a real-real computer?
L210[23:05:10] <Hawk777> Line two is
load_device, not device_open *facepalm*.
L211[23:05:16]
<Ocawesome101> real actual computer
L212[23:05:21] <Amanda> okay.
L213[23:05:45] <Amanda> I discovered
recently that clang doesn't like not being told where GCC keeps
it's dirty laundry, and will sigsegv on init
L214[23:05:46] <Hawk777> But, uh, the
backtrace also points to devices.c line 53, and in the GitHub repo
you posted, devices.c is only 52 lines long!
L215[23:05:58]
<Ocawesome101> ...no
L216[23:05:59]
<Ocawesome101> no it doesn't
L217[23:06:03]
<Ocawesome101> that's lin 33
L218[23:06:07]
<Ocawesome101> line*
L219[23:06:10] <Hawk777> ARGH I CAN READ
IS WEAR
L220[23:06:17] <Amanda> IS WEAR!?
L221[23:06:26] <Hawk777> I give up
:D
L222[23:06:28] <Amanda> :P
L223[23:06:29]
<Ocawesome101> lmao
L224[23:06:51] <Hawk777> wait
L225[23:06:55] <Hawk777> tty.o ≠
tty.so
L226[23:07:00]
<Ocawesome101> hm
L227[23:07:09] <Hawk777>
dlopen("tty.o") is going to have a bad time
L228[23:07:37]
<Ocawesome101> it's compiled with `-shared
-fPIC`, fortunately, so it _was_ a shared object file
L229[23:07:40]
<Ocawesome101> i've fixed that,
though
L230[23:07:47] <Hawk777> Linker still
needs to run.
L231[23:08:08] <Hawk777> Otherwise you’ve
got an object file that’s a suitable ingredient for a shared
object, not an actual shared object, AFAIK.
L232[23:08:52]
<Ocawesome101> afaik gcc only doesn't run
the linker if you use `-c`
L233[23:09:03] <Hawk777> Oh, did you omit
-c but do “-o tty.o” or something?
L234[23:09:08]
<Ocawesome101> yes
L235[23:09:10]
<Ocawesome101> :P
L236[23:09:10] <Hawk777> Oh.
L237[23:09:32] <Hawk777> Well, I *think*
that should be fine then.
L238[23:10:07]
<Ocawesome101> given that it finds the
symbol i'd say yes, it probably is
L239[23:10:41] <Hawk777> “file” reports it
to be an “ELF 64-bit LSB shared object” not an “ELF 64-bit LSB
relocatable”?
L241[23:13:14]
<Ocawesome101> `liblua` isn't marked
relocatable either - and i compiled with `-fPIC`
L242[23:13:38] <Hawk777> Oh, “relocatable”
is what “file” prints out (for me at least) on a .o file, “shared
object” is what it prints for a .so file.
L243[23:13:44] <Hawk777> So that looks
fine.
L244[23:14:59]
<Ocawesome101> oddly enough it was working
earlier before i ran into the `symbol not found` error
L245[23:15:07] <Hawk777> Maybe try to get
tty.so to include debug info somehow?
L246[23:15:13] <Hawk777> Oh, so adding
-rdynamic made it start failing?
L247[23:16:56]
<Ocawesome101> no
L248[23:16:58]
<Ocawesome101> well
L249[23:17:04]
<Ocawesome101> maybe? but it doesn't seem
like it
L250[23:17:20]
<Ocawesome101> i tried passing `-g` but
gdb didn't grab it
L251[23:17:57] <Hawk777> Hm. Not sure why.
I’ve got a dynamic loading system that does allow SOs to refer to
symbols in the application, and includes debug info in the SOs, and
works fine.
L252[23:18:02] <Hawk777> Unfortunately
can’t share it.
L253[23:18:29]
<Ocawesome101> hm. am i doing anything
major differently?
L254[23:19:18] <Hawk777> Well, a couple of
differences. I use RTLD_GLOBAL|RTLD_LAZY, you use
RTLD_LOCAL|RTLD_NOW. Not sure whether that matters. I also look up
the address of a variable, not a function (the variable is a
structure which contains function pointers, but I don’t dlsym
actual functions directly).
L255[23:19:31] <Hawk777> I also pass
RTLD_DEFAULT rather than a specific handle to dlsym.
L256[23:19:37] <Hawk777> But none of these
seem like they should break things so badly.
L257[23:19:57]
<Ocawesome101> i agree
L258[23:20:16]
<Ocawesome101> @Z0idberg iirc you're
reasonably familiar with relatively low-level stuff like this -
mind taking a look?
L259[23:21:09] <Amanda> Yhitch just wants
the hazard pay for going into the no man's land.
L261[23:23:14] <Hawk777> Is tty.so linked
to any other libraries that are *not* also linked by the main
executable? I *think* RTLD_LOCAL would mean it gets its own copy of
any such libraries.
L262[23:23:17] <Hawk777> Which might be
weird.
L263[23:23:35]
<Ocawesome101> i don't believe so
L264[23:23:52]
<Ocawesome101> it's _not_ linked to
`dl`
L265[23:24:04] <Hawk777> Shouldn’t need to
be. You just “link” it to the main executable, right?
L266[23:24:07]
<Ocawesome101> (but linking it doesn't
change anything)
L267[23:24:09]
<Ocawesome101> yeah
L268[23:24:26]
<Ocawesome101> `build.sh` has the commands
i use to compile it
L269[23:24:32]
<Ocawesome101> first is for the main
thing, second is for the devices
L270[23:25:12] <Hawk777> Oh, so not linked
to anything at all.
L271[23:25:16] <Hawk777> Seems pretty
simple.
L272[23:25:21] <Hawk777> And like it ought
to work.
L273[23:25:37]
<Ocawesome101> i agree - which is why i'm
confused :P
L274[23:30:01] <Hawk777> wait derp
L275[23:30:05] <Hawk777> you’re dlclosing
before calling the function!
L276[23:30:14]
<Ocawesome101> oh, am i not supposed to do
that? :P
L277[23:30:28] <Hawk777> dlclose means
unload the library
L278[23:30:50]
<Ocawesome101> yeah it works now
lmao
L279[23:30:51]
<Ocawesome101> thanks
L280[23:31:33] <Hawk777> TBH probably
better to just not even try to dlclose ever, unloading dynamically
linked stuff is kinda… messy.
L281[23:34:27] <Amanda> It's pretty much a
no-op isn't it?
L282[23:34:44] <Amanda> since there's no
real way to know if you've got a pointer there still?
L283[23:36:54] <Hawk777> Well, it *could*
do nothing if someone else still has a reference to the library
open. If the refcount reaches zero it will unload (as Oca just
found out the hard way), just as you say, there could be pointers
still pointing into the area, so it’s very hard to be certain it’s
safe to do so.
L284[23:38:49] <MichiBot> Amanda REMINDER:
give Margaret some fighters, take over the northern seaboard
L285[23:48:12] <Michiyo> I hate text
parsing >_>
L286[23:51:13] <Amanda> %give Michibot a
pirate asteroid
L287[23:51:14] *
MichiBot searches through her inventory for a bit. "I couldn't
find anything..."
L288[23:52:42] <Amanda> %give MichiBot a
pirate asteroid
L289[23:52:42] *
MichiBot accepts the pirate asteroid and adds it to her
inventory