C++ MAC OS X 10.9(及更高版本)中链接器的ACE失败

C++ MAC OS X 10.9(及更高版本)中链接器的ACE失败,c++,macos,linker,clang++,ace,C++,Macos,Linker,Clang++,Ace,我正在使用CLANG++在MAC OS X 10.9中编译并运行以下简单代码: #include "ACE_wrappers/ace/MEM_Stream.h" #include <iostream> int main() { std::cout << "Hello World" << std::endl; ACE_MEM_Stream m(3); m.close_reader(); retur

我正在使用CLANG++在MAC OS X 10.9中编译并运行以下简单代码:

#include "ACE_wrappers/ace/MEM_Stream.h"
#include <iostream>

int main()
{
        std::cout << "Hello World" << std::endl;
        ACE_MEM_Stream m(3);
        m.close_reader();
        return 0;
}
编译行:

clang++ myTest.cpp
我正在使用的CLANG编译器版本:

QAs-MacBook:aceTestLinking Moamen$ clang++ --version
Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
注意-我还尝试使用“-std=c++11”、“-stdlib=libstdc++”进行编译,如下主题所示: 但没有解决问题

谢谢


Moamen

感谢您的回复,在对Linux Ubuntu进行了一些调查之后,我使用以下命令g++-o m.out myTest.cpp ACE_wrappers/lib/libACE.a-I ACE_wrappers/-lpthread-ldl成功地编译了代码。似乎缺少一些默认LIB

很明显,您没有链接到ACE库。请注意,以前在旧的OS X(10.8及以下版本)中使用过相同的代码,但在CLANG编译器更新之后,它就不起作用了(在我使用g++之前,不是CLANG++)。我已尝试运行clang++myTest.cpp-I ACE_wrappers/lib,但仍然得到相同的错误
-l
-l
是不同的编译器选项,我相信您必须使用正确的值指定它们。
QAs-MacBook:aceTestLinking Moamen$ clang++ --version
Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix