This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Help needed with loading a gcc plugin
- From: Sandeep K Chaudhary <babbusandy2006 at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Sat, 22 Jun 2013 03:31:35 -0400
- Subject: Help needed with loading a gcc plugin
Hi guys,
I am trying to run a gcc plugin that I created. I have followed the
steps mentioned in the followiing tutorial to create the plugin
http://lwn.net/Articles/457543/
I am able to successfully build the plugin shared object. However, I
can not run the plugin. It gives errors related to undefined symbols.
Below is the terminal snippet.
sandeep@ubuntu:~/myplugin$ /usr/bin/gcc
-fplugin=/home/sandeep/myplugin/speller.so -c test.c
cc1: error: cannot load plugin /home/sandeep/myplugin/speller.so
/home/sandeep/myplugin/speller.so: undefined symbol: warning_at
I can see that the mentioned symbol is indeed undefined using following
sandeep@ubuntu:~/myplugin$ nm -D -C speller.so | grep warning_at
U warning_at
And I see that
sandeep@ubuntu:/usr/lib/gcc/x86_64-linux-gnu/4.7.2$ pwd
/usr/lib/gcc/x86_64-linux-gnu/4.7.2
sandeep@ubuntu:/usr/lib/gcc/x86_64-linux-gnu/4.7.2$ nm -D -C $(gcc
-print-file-name=cc1) | grep "warning_"
0000000000c1e5a0 T warning_at(unsigned int, int, char const*, ...)
What am I missing? How should I link the libraries correctly?
Please help.
Thanks,
Sandeep.