在mac上编译CGAL程序,使用macports安装

Compiling CGAL programs on mac, installed using macports

本文关键字:使用 macports 安装 程序 CGAL mac 编译      更新时间:2023-10-16

我正在做一个需要在mac上运行CGAL的项目,一般来说我是c++的新手。我使用命令使用macports安装了CGAL

sudo port install cgal

安装完成后,.h文件被放置在 中。

/opt/local/include/cgal

我将教程程序复制到。cpp文件中,并使用

进行编译。

g++ -lcgal -I/opt/local/include/ vec.cpp

返回错误

ld:没有找到- legal的库Clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

g++ -lcgal -v -I/opt/local/include/ vec.cpp

返回

Apple LLVM version 5.1 (clang-503.0.40)(基于LLVM 3.4svn)目标:x86_64-apple-darwin13.2.0线程模型:posix"//xcode/内容/应用开发人员/工具链/XcodeDefault。-mdisable-fp-elim -masm-verbose - munwindtables -target-cpu core2 -target-link -version 236.3 -v -resource-dir/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1 -I/opt/local/include -stdlib=libc++ - fdepreed -macro -fdebug- compile -dir/Users/sujeath/Cmstackrealign -fblocks -fobjc-runtime=macosx-10.9.0 - ffencode -extended-block-signature -fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -vectorize-slp -0/var/folder/tm/bgg4k0xs4v36pzwxvsrqtsb00000gn/T/vec-0a56fbc++ vce .cppclang -cc1 version 5.1基于LLVM 3.4svn默认目标x86_64-apple-darwin13.2.0忽略不存在的目录"/usr/include/c++/v1"#include "…"搜索从这里开始:#include搜索从这里开始:/opt/地方/包括/应用程序/xcode/内容/开发/工具链/XcodeDefault.xctoolchain/usr/bin/. ./lib/c++/v1/usr/local/include/应用程序/xcode/内容/开发/工具链/XcodeDefault.xctoolchain/usr/bin/. ./lib/叮当声/5.1/包括/应用程序/xcode/内容/开发/工具链/XcodeDefault.xctoolchain/usr/include/usr/include/System/Library/Frameworks(框架目录)/Library/Frameworks(框架目录)搜索列表结束。"//xcode/内容/应用开发人员/工具链/XcodeDefault。# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #0 - lclegal -lc++ -lSystem/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1/lib/darwin/libclang_rt.osx.a没有找到- legal的库Clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

我使用Mavericks BTW和gnu gcc

谢谢!

所以,首先,我是stackoverflow的新手,实际上我更愿意添加评论而不是发布答案,因为我对c++/Mac世界也很陌生。

声明此免责声明,我想指出两件事,我看到"解析"您发布的输出:

  1. 你正在调用g++,然而,你正在使用clang来编译(默认在OS X Mavericks上)作为/usr/bin/g++指向/usr/bin/clang++
  2. 我认为cgal库不在您的搜索路径上。Marc Glisse向您指出了ld命令的-L选项,该选项允许您定义进一步的搜索目录。也许-L/opt/local/lib可能适合你使用Macports(我没有使用Macports很长一段时间,所以我不确定这是否是库的正确路径)。