2017-03-20 12 views
-1

오류 그 소리에 설치 : http://quantlib.org/install/macosx.shtml에서, 컴파일 예제를 실행에 error: linker command failed with exit code 1 (use -v to see invocation)QuantLib 1.9 OS X

,

g++ -I/opt/local/include/ -I/opt/local/include/boost BermudanSwaption.cpp \ 
    -o bermudanswaption -L/opt/local/lib/ -lQuantLib 

오류 메시지가이 :

clang -cc1 version 8.0.0 (clang-800.0.42.1) default target x86_64-apple-darwin16.1.0 
ignoring nonexistent directory "/usr/include/c++/v1" 
#include "..." search starts here: 
#include <...> search starts here: 
/opt/local/include 
/opt/local/include/boost 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1 
/usr/local/include 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include 
/usr/include 
/System/Library/Frameworks (framework directory) 
/Library/Frameworks (framework directory) 
End of search list. 
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -dynamic -arch x86_64 -macosx_version_min 10.12.0 -o bermudanswaption -L/opt/local/lib/ /var/folders/m3/39_h4bg52xzfv8800_zrkvrh0000gn/T/BermudanSwaption-a73fac.o -lQuantLib -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/lib/darwin/libclang_rt.osx.a 
Undefined symbols for architecture x86_64: 
...... 
    "QuantLib::detail::operator<<(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, QuantLib::detail::percent_holder const&)", referenced from: 
     calibrateModel(boost::shared_ptr<QuantLib::ShortRateModel> const&, std::__1::vector<boost::shared_ptr<QuantLib::CalibrationHelper>, std::__1::allocator<boost::shared_ptr<QuantLib::CalibrationHelper> > > const&) in BermudanSwaption-a73fac.o 
     _main in BermudanSwaption-a73fac.o 
    "QuantLib::operator<<(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, QuantLib::Date const&)", referenced from: 
     QuantLib::InterestRateIndex::valueDate(QuantLib::Date const&) const in BermudanSwaption-a73fac.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

`

이것은 무엇을 의미하며 왜 LLVM이 호출됩니까? 저는 최신 Xcode, Mac OSX 10.12.1을 사용하고 있습니다. 파이썬에는 익숙하지만 명령 줄 설치 또는 컴파일에는 익숙하지 않습니다. ...

답변

0

오류는 매우 간단합니다. BermudanSwaption.cpp 만 컴파일했지만 전체 QuantLib도 컴파일해야합니다. 그렇지 않으면 링커가 구현을 찾을 수 없습니다.

+0

감사합니다. 어떤 부분이 이것을 설명합니까? @ 학생 T – rrg