GNOME Bugzilla – Bug 750981
linking error on Mac OS X Yosemite
Last modified: 2015-09-07 09:22:09 UTC
While updating the easytag Formula on Homebrew to 2.3.7 I noticed the following linker error: CXXLD easytag ld: unknown option: --no-as-needed clang: error: linker command failed with exit code 1 (use -v to see invocation) I managed to circumvent it for now by removing the test for this linker flag in the configure script, but I guess it means that the m4 test is producing a false positive for this flag which should be addressed in a more robust manner. I am running Mac OS X Yosemity with clang --version: Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn) Target: x86_64-apple-darwin14.3.0 Thread model: posix
The macro which adds the --no-as-needed flag is part of AX_COMPILER_FLAGS from autoconf-archive. Can you try making sure that you are using the latest M4 macros from autoconf-archive (copying them into the m4/ subdirectory in the easytag repository if necessary) and test to see whether that fixes the problem? You can fetch autconf-archive at http://savannah.gnu.org/projects/autoconf-archive/ (or https://github.com/peti/autoconf-archive/).
I tried it with the newest version of the autoconf-archive macros but got the same result :-(
I just noticed that the autconf-archive macro has been updated: https://github.com/peti/autoconf-archive/commit/dece1b219362fecbae146d243548afd0e927f127 The commit message suggests that this may fix exactly the problem that you are seeing with the unknown linker option. Can you test the updated AX_COMPILER_FLAGS_LDFLAGS macro?
Sorry for the delay: I was on holiday last week. Just tested it and it works nicely with the new version, though I had to copy several more autoconf archive macros into m4 to get the new AX_COMPILER_FLAGS_LDFLAGS version working.
Thanks for the testing! I just updated the autoconf-archive macros in EasyTAG git master to the latest, which includes the fix, in commit 84069f14c8c2006555e397ae5acdc7fc40917f7b. A future 2.4.1 release should have the fix.