clang:错误:未知参数:来自macos上libtool的'-n'

问题描述 投票:0回答:1
/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-am                                                                          
/bin/sh ./libtool  --tag=CXX   --mode=link /Applications/Xcode.app/Contents/Developer/usr/bin/g++  -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -I/Users/unhammer/src/macdivvun-service/Dependencies
/Static/x86_64/include -fvisibility=hidden -std=c++1z  -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -L/Users/unhammer/src/macdivvun-service/Dependencies/Static/x86_64/lib -o hfst-ospell main.o lib
hfstospell.la -n  -L/usr/local/lib -licui18n -licuuc -licudata                                                                           
libtool: link: /Applications/Xcode.app/Contents/Developer/usr/bin/g++ -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -I/Users/unhammer/src/macdivvun-service/Dependencies/Static/x86_64/include -fvisi
bility=hidden -std=c++1z -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -o hfst-ospell main.o -n -Wl,-bind_at_load  -L/Users/unhammer/src/macdivvun-service/Dependencies/Static/x86_64/lib ./.libs/lib
hfstospell.a -L/usr/local/lib -licui18n -licuuc -licudata                                                                                
clang: error: unknown argument: '-n'                                                                                                     
make[1]: *** [hfst-ospell] Error 1                                                                                                       
make: *** [all] Error 2      

-n来自哪里?我该怎么知道?我正在使用xcodebuild,但是xcodebuild -showBuildSettings -scheme Dependencies|grep -e -n什么都没有,我在Makefile.am中的任何标志或者实际(autotools)项目中的configure.ac中看不到-n

xcode clang libtool
1个回答
0
投票

我查看了生成的Makefile中构建的实际目标,从$(AM_V_CXXLD)$(hfst_ospell_LINK) $(hfst_ospell_OBJECTS) $(hfst_ospell_LDADD) $(LIBS)行开始,并递归地手动检查所有变量。最后,我看到LIBS-n -L/usr/local/lib -licui18n -licuuc -licudataLIBSLIBS = @LIBS@中是Makefile.in,所以由configure.ac设定,它运行icu-config --ldflags来设置它。

由于某种原因,icu-config --ldflags的版本(57.1),我给了-n -L/usr/local/lib -licui18n -licuuc -licudata而不是-L/usr/local/lib -licui18n -licuuc -licudata。升级icu解决了它。

© www.soinside.com 2019 - 2024. All rights reserved.