OSX中的Netbeans和Boost库

Netbeans and Boost libraries in OSX

本文关键字:Boost Netbeans 中的 OSX      更新时间:2023-10-16

到目前为止,我已经使用brew下载了boost库,找到了它们的位置,并将它们复制到我的主文件夹中。

我试着密切关注如何从windows教程中添加这些库,但我似乎遗漏了一些东西。编译后。。。

#include <iostream>
#include <string>
#include <boost/regex.hpp>
using namespace std;
using namespace boost;
int main() {
    string s = "This is my simple sample text, really.";
    regex re(",|:|-|s+");
    sregex_token_iterator my_iter(s.begin( ), s.end( ), re, -1);
    sregex_token_iterator my_end;
    while (my_iter != my_end)
        cout << *my_iter++ << 'n';
    return (EXIT_SUCCESS);
}

我只是收到一个错误,说明#include <boost/regex.hpp> file not found

使用

  • Netbeans 8.0.1
  • Mac OS 10.9.5

大多数教程都展示了如何使用cygwin进行设置,这对我来说并不适用,因为我使用的是windows,并且没有适用于Mac OS的有用或易于遵循的教程。

谢谢你在这件事上的帮助。

经过反复试验,我终于明白了!

因此,在Netbeans 8.0.1中,您想为regex设置的是:

Netbeans>Preferences select the C/C++ tab下,然后在此窗口中点击"Code Assistance",然后点击"C++ Compiler"

"Include Directories"中,您将添加保存boost库和头文件的位置,在我的机器上,它安装到/usr/local/Cellar/boost/1.56.0你的可能不同。

完成后,点击"Apply"即可关闭此窗口。

然后,我使用我原来文章中的代码创建了一个新的c++项目。

一旦您可以编译一个"Hello World",请继续使用我原来文章中的一个代码替换您的代码。

在项目文件夹所在的左侧(默认),右键单击该文件夹并选择"Properties"。然后你应该得到这个窗口。导航到"Build"选项下的"C++ Compiler"

还记得我们是如何定位包含文件和库文件所在的文件夹的吗?在"Include Directories"部分中执行相同操作,只是这次您将选择包含.hpp文件的文件夹。就我而言,是"/usr/local/Cellar/boost/1.56.0/include"点击"Apply"

这样就可以处理掉头文件了。现在让我们来做库文件!

完成后,导航到同一选项窗口中的"Linker"选项。我们在

"Addition Library Directories"下,找到包含动态库和静态库的文件夹。这些文件类型应以.a or .dylib.结尾矿井位于"/usr/local/Cellar/boost/1.56.0/lib"

现在,您所要做的就是选择右侧的"Libraries" and the "...",它将为您提供一个新窗口。

在这里,您将选择"Add Library File"并添加以下内容。。。

它们应该贴上标签:

"libboost_program_options-mt.dylib"
"libboost_regex-mt.dylib"

完成后,构建并运行,使用上述代码时的结果应该是:"Thin in my nimple nample textn really.n"

希望这能帮助其他人!