我一定错过了什么,希望你能帮忙。我有一个C ++应用程序,最初是在RedHat x86 64平台上使用NetBeans开发的。代码和nbproject
文件/文件夹都在源代码管理下(git)。我也在使用Clang。
我正在尝试使用相同版本的NetBeans将此应用程序移植到OSX,并为不同的平台差异添加一些#ifdef
语句。我还在OSX上修改了每个项目的NB属性以指向不同的include和lib位置,对于应用程序的内部库,我指向本地.../dist/Debug/Clang-MacOSX
目录。
当我更改偏好时,我会尽可能多地点击Apply
按钮。
然而,当我编译可执行文件和最终共享对象时,我收到很多关于各种C ++类的消息,如std::locale
和其他消息:
ld: symbol(s) not found for architecture x86_64
我每次都做清洁和建造。我只使用Debug
配置。我没有触及Release
配置选项,因为根据我的需要,我只会部署这个东西的调试版本。
Release
配置仍然在其中引用了x86_64,并且与各种configuration.xml
文件一样,发布相关的makefile也提到了x86。我一直对从这些东西中扯掉东西感到沮丧。
所以,问题是:我应该如何为跨平台C ++开发设置Netbeans和git?
答案 0 :(得分:0)
嗯,这并不明显......事实证明我必须指定-stdlib=libstdc++
。这一切都不好