C++ C++;ostream操作员<<&引用;“无定义”;错误(仅限Mac构建)

C++ C++;ostream操作员<<&引用;“无定义”;错误(仅限Mac构建),c++,macos,ostream,C++,Macos,Ostream,我有一些在Linux上编译的代码,但在Mac上编译失败。我正在使用gcc-4.2.1进行编译。这个代码是C++,看起来像: void print(std::ostream& os) const { os << std::string(*this) << " "; } void打印(std::ostream&os)常量{os 我想也许我可以通过重载来修复它。我最初的猜测是它没有链接C++标准库。由于你使用了什么编译器,你通过了什么标志?包含已经足够了。(我查看了流

我有一些在Linux上编译的代码,但在Mac上编译失败。我正在使用gcc-4.2.1进行编译。这个代码是C++,看起来像:

void print(std::ostream& os) const { os << std::string(*this) << " "; }
void打印(std::ostream&os)常量{os

我想也许我可以通过重载来修复它。我最初的猜测是它没有链接C++标准库。由于你使用了什么编译器,你通过了什么标志?<代码>包含已经足够了。(我查看了流头,它包含bits/basic_string.h,其中定义了运算符,但错误仍然存在。@DavidLobron:那么恐怕您需要提供更多上下文编译命令:g++-g-m32-Werror-Wall-O3-I/Users/dlobron/fp_dev/common/include-I/usr/local/include-D_FILE\u OFFSET_bits=64-idirafter/usr/include)/c++/4.2.1/ext-I/Users/dlobron/fp\u dev/mapUtils/-I/Users/dlobron/fp\u dev/common/include/-DPREFIX=\“/usr/local/\”-DPROGFULLPATH=\“/usr/local/sbin/\”-DHAVE_CONFIG_H-c-MMD-MF/Users/dlobron/fp_dev/mapUtils/ConfigReader.o.d-MT/Users/dlobron/fp_dev/mapUtils/ConfigReader.o/Users/dlobron/fp_dev/mapUtils/ConfigReader.cc-o/Users/dlobron/fp_dev/mapUtils/ConfigReader。o@DavidLobron:我的意思是你需要提供一些关于程序的上下文(源代码)。试着准备一份

error: explicit instantiation of Œstd::basic_ostream<_CharT, _Traits>&
std::operator<<(std::basic_ostream<_CharT, _Traits>&, const
std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits
= std::char_traits<char>, _Alloc = std::allocator<char>]¹ but no
definition available
#include <string>
#include <ostream> // or <iostream> if you need both input and output