This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: Issues with LD when using GCC in a C program
- From: Ian Lance Taylor <iant at google dot com>
- To: eugaia at gmail dot com
- Cc: gcc-help at gcc dot gnu dot org
- Date: Tue, 24 Mar 2009 07:17:26 -0700
- Subject: Re: Issues with LD when using GCC in a C program
- References: <49C86555.6000106@gmail.com>
Marcus Clyne <eugaia@gmail.com> writes:
> // compile the shared object
>
> execl ("/usr/bin/gcc",
> "-shared",
> "-lmylib",
> "-o",
> so_file,
> object_file,
> NULL);
Note that -lmylib is in the wrong place. Libraries must follow the
objects which refer to them.
It does not make sense that you would get an undefined symbol error when
using -shared, so I don't know what is going on. It is unlikely that
you are missing anything from the environment.
I recommend adding the -v option to your execl, to verify that the
expected options are being passed to the subprocesses. Compare to the
output using -v on the command line.
Ian