-rdynamic
it fails on the crypto dependencies_Z10md5_finishP11MD5state_st
which demangles to md5_finish(MD5state_st*)
void *pHandle = dlopen(pFilename, RTLD_LAZY);
this works with hot reloading resolving the symbols lazyRTLD_NOW
for hot reloading which then fails on IJob which is fixed by -rdynamic which then fails on md5_finishclass IJob
Fixes the following clangd error:
Invalid case style for class 'IJob' (fix available)
!imageRTLD_NOW
and -rdynamic
-rdynamic
and compile my plugin from within the ddnet code base it somehow caches the result of dlsymcargo run --release --bin=twgpu-map-inspect -- ~/.teeworlds/maps/Stronghold.map /usr/share/ddnet/data/mapres/
new-approach
branch, as I need to tell everyone to switch to it readelf
whether the symbol is exportedc++
ANTIBOTAPI int AntibotAbiVersion();
defined as
c++
#define ANTIBOTAPI DYNAMIC_IMPORT
defined as
c++
#ifdef CONF_FAMILY_WINDOWS
#define DYNAMIC_EXPORT __declspec(dllexport)
#define DYNAMIC_IMPORT __declspec(dllimport)
#else
#define DYNAMIC_EXPORT
#define DYNAMIC_IMPORT
#endif
-rdynamic
and strip out the collision codeinfo proc mappings
info proc mappings
is hugedlclose
?/proc/<pid>/maps
which contains the same things, I thinkgrep twbl /proc/$(pgrep DDNet-Server)/maps
make
in the servers build directorymold
?/home/chiller/Desktop/git/twbl-ddnet/build/.mold-hqv1pr
?(gdb) x/s 0x7ffff7fb7000
0x7ffff7fb7000: <error: Cannot access memory at address 0x7ffff7fb7000>
grep 7ffff7fb6000 /proc/$(pgrep DDNet-Server)/maps
comes back emptygrep 7ffff7fb /proc/$(pgrep DDNet-Server)/maps
7ffff7fbb000-7ffff7fc3000 rw-s 00000000 103:02 19352181 /home/chiller/.teeworlds/ddnet-server.sqlite-shm
warning: Temporarily disabling breakpoints for unloaded shared library "./libtwbl_bottick.so"
/proc/<pid>/mappings
?/proc/<pid>/mappings
0x7fffe456fc14: <error: Cannot access memory at address 0x7fffe456fc14>
/proc/<pid>/maps
/home/chiller/Desktop/git/twbl-ddnet/build/libtwbl_bottick.so
ls -l
the relevant symlink in /proc/<pid>/map_files/<addr_range>
?lr-------- 1 chiller chiller 64 May 21 17:36 7fffe4400000-7fffe44af000 -> /home/chiller/Desktop/git/twbl-ddnet/build/libtwbl_bottick.so
mv
the file over)mv
mv
is atomiccp
isn't atomic by defaultSELECT SUM(time) AS Time FROM record_race WHERE Name = %s;
to get your desired result--vsync
to limit the framerate. without that, it currently renders at max fps (edited)dbg_gfx 4
and share the console output?dbg_gfx 4
and share the console output? fs_is_dir
check in the fs_chdir
function. The SetCurrentDirectoryW
and chdir
functions would already include such necessary checks anyway.
Add remark about the fs_chdir
and fs_getcwd
functions not being thread-safe on Windows to documentation.
Assert that GetCurrentDirectoryW
was successful instead of logging an error message. This function should only potentially fail if the current working directory was changed by another thread between the two calls, ...dbg_gfx 4
and share the console output? ::1
, but when trying to bind to it, the address seems wrong. I guess it somehow got mangled up before the actual bind call. This needs some further deb...SELECT SUM(time) AS Time FROM record_race WHERE Name = %s;
to get your desired result