/tmp/ccis3CaX.o: In function `_lambda42_':It's obtuse problems like the one giving me the above error that makes me think I must be incompetent. I understand what the compiler is complaining about, but I'm not sure why it's seeing what it is seeing. From the Vala perspective, Element extends BackedNode, where a few methods are defined. ElementTest exercises these methods, but for some reason, a method in BackedNode, to_string, ends up as 'undefined' when compiling the C code. If I check the C code for BackedNode, gxml_dom_backed_node_to_string is defined, and I don't know why it wouldn't get into the .so that ElementTest links against. I mean, the symbol name is present in the .so, and other methods that are coded similarly to to_string are there and considered defined. I've tried rewriting the function, using an almost-empty function, changing the function name, etc. This has caused me to waste too much time today and is giving me a major headache, and it's something so trivial. Sigh.
ElementTest.vala.c:(.text+0x39b0): undefined reference to `gxml_dom_backed_node_to_string'
collect2: ld returned 1 exit status
error: cc exited with status 256
Compilation failed: 1 error(s), 0 warning(s)
update: Yup, I'm an idiot. A change to where I was storing the built .so resulted in me persistently linking to an older one for the last couple of days. I hadn't noticed, as I've been mostly working on documentation and porting another library to use mine, and hadn't added any new symbols. Going by hand, and using gcc and pkg-config directly, helped me figure this out, as well as writing the above.
No comments:
Post a comment