From: Warren Young Date: November 12 2010 8:11pm Subject: Re: Link error when building mysql++-3.1.0 with --as-needed List-Archive: http://lists.mysql.com/plusplus/9116 Message-Id: <4CDD9F87.2090108@etr-usa.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 11/12/2010 11:58 AM, Warren Young wrote: > On Nov 12, 2010, at 9:44 AM, Adrian Cornish wrote: > >> This is related to link order, please place static library >> mysqlpp_ssqls2parser before the "--as-needed" flag and it will link >> fine. >> >> g++ -o test_ssqls2 test_ssqls2_ssqls2.o -lmysqlpp_ssqls2parse >> -Wl,--as-needed -L. -L/usr/local/lib/mysql -lmysqlclient -lmysqlpp > > To make that fix apply to MySQL++, you'd have to patch Bakefile, or > convince the maintainer to do it for you. There's nothing in > mysql++.bkl you can change to force -l flags to appear before -L. On thinking more about it, I don't even see why Vaclav (the Bakefile maintainer) would accept that solution. -L *should* appear before -l. There has to be a better solution. I can't believe this is the only command line ordering g++ will accept to give the right result.