/tech/ - Technology and Computing

Technology, computing, and related topics (like anime)

I Fucked Up

Max message length: 6144

Drag files to upload or
click here to select them

Maximum 5 files / Maximum size: 20.00 MB

More

(used to delete files and postings)


What have you been doing? Anonymous 10/29/2019 (Tue) 17:29:48 No.573
I've been trying out Vulkan, even though my GPU does not support it.

What did I learn?
1. I found out that apparently the Vulkan loader shits itself if the executable that calls it exports the same symbols as Vulkan. libGL does not do this.
2. I learnt that my executables actually have bunch of symbols in .dynsym. It seems GCC/Clang likes to put global symbols into .dynsym if the executable links to a shared library that exports those symbols. I wish it didn't do that. I solved the problem by renaming the affected variables.

Once again I was bitten in my ass due to linkers being wonky. This problem would not have occurred had the linker worked differently. If nothing would be imported/exported without explicit user direction, I don't think linking problems would be so annoying or common.

Is there any reason (other than Unix autism) why image files do not specify the library from which a symbol is loaded? It sounds retarded to have some kind of load priority, when one could just specify the library manually.

Report/Delete/Moderation Forms
Delete
Report