Компиляция CGAL-программ на mac, установленных с использованием macports

Я работаю над проектом, который требует запуска CGAL на Mac, и я совсем новичок в C++ в целом. Я установил CGAL, используя macports, используя команду

sudo port install cgal

Установка завершена и файлы.h были помещены в

/opt/local/include/cgal

Я скопировал учебную программу в файл.cpp и скомпилировал с помощью

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

Это возвращает ошибку

ld: библиотека не найдена для -lcgal clang: error: сбой команды компоновщика с кодом выхода 1 (используйте -v для просмотра вызова)

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

возвращается

Apple LLVM версии 5.1 (clang-503.0.40) (на основе LLVM 3.4svn) Цель: x86_64-apple-darwin13.2.0 Модель потока: posix "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple x86_64-apple-macosx10.9.0 -emit-obj -mrelax-all -disable-free -disable-llvm-верификатор -основная-имя-файла vec.cpp -mrelocation-model pic -pic-level 2 -mdisable-fp-elim -masm-verbose -munwind-tables -target-cpu core2 -target-linker-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++ -fdeprecated-macro -fdebug-compilation-dir /Users/sujeath/C Practice -ferror-limit 19 -fmessage-последовательность 80 -stack-protector 1 -mstackrealign -fblocks -fobjc-runtime=macosx-10.9.0 -fencode-extended-block-подпись -fcxx-исключения -fexceptions -fdiagnostics-show-option -fcolor-одиагностика -vectorize-slp -o /var/folders/tm/bgg4k0xs4v36pzwxvsrqtsb00000gn/T/vec-0a56fb.o -x C++ ve c.cpp clang -cc1 версия 5.1 на основе цели по умолчанию LLVM 3.4svn x86_64-apple-darwin13.2.0, игнорирующей несуществующий каталог "/usr/include/ C++/v1" \#include "...", поиск начинается здесь: \#include поиск начинается здесь: /opt/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1 /usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include /usr/include / Система / Библиотека / Фреймворки (каталог фреймворков) / Библиотека / Фреймворки (каталог фреймворков) Конец списка поиска. "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -dynamic -arch x86_64 -macosx_version_min 10.9.0 -o a.out / var / folder / tm / bgg4k0xs4vgnsq T/vec-0a56fb.o -lcgal -lC++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.1/lib/darwin/libclang_rt.os.a ld: библиотека не найдена для -lcgal clang: error: сбой команды компоновщика с кодом выхода 1 (используйте -v для просмотра вызова)

Я использую Mavericks BTW и GNU GCC

Спасибо!

1 ответ

Итак, во-первых, я новичок в stackru и на самом деле предпочел бы добавить комментарий, а не публиковать ответ, так как я тоже довольно новичок в мире C++/Mac.

В заявлении об отказе от ответственности я хотел бы указать на две вещи, которые, как я увидел, "анализируют" опубликованную вами информацию:

  1. Ты звонишь g++Однако вы используете clang скомпилировать (по умолчанию на OS X Mavericks) как /usr/bin/g++ указывает на /usr/bin/clang++
  2. Я думаю, что библиотека cgal не находится на вашем пути поиска. Марк Глисс указал вам на -L вариант ld Команда, которая позволяет вам определять дальнейшие поисковые каталоги. Наверное -L/opt/local/lib может работать для вас с использованием Macports (я не использовал Macports в течение длительного времени, поэтому я не уверен, что это правильный путь для библиотек).

Надеюсь это поможет.

Другие вопросы по тегам