質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Clang

Clangは、プログラミング言語 C、C++、Objective-C、Objective-C++ 向けのコンパイラである。

Q&A

解決済

1回答

833閲覧

cinderがコンパイルできない。

erdes

総合スコア35

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Clang

Clangは、プログラミング言語 C、C++、Objective-C、Objective-C++ 向けのコンパイラである。

0グッド

0クリップ

投稿2019/08/09 14:30

Cinderを使ってみたいと思っています。

 Cinderのサイトからファイルをダウンロードし、解凍されたcinder_0.9.1_macという名前のファイルごと/Users/hiroshi/に置きました。

以前質問し回答いただいた内容を参考に、

$ export CPATH = /Users/hiroshi/cinder_0.9.1_mac/include

とし、

# ソースコードは以下に記載しますが、ファイル名はcinder.cppとしています。 $ /usr/bin/clang++ -std=c++11 cinder.cpp -I /Users/hiroshi/cinder_0.9.1_mac/include/cinder

とすることで、

C++

1// ファイル名はcinder.cpp 2 3#include<iostream> 4#include "cinder/Area.h" 5using namespace std; 6 7int main(){ 8 9 cout << "success\n" ; 10 return 0; 11} 12

は問題なくコンパイルできるのですが、試しにインクルードするライブラリを変えてみた次のコード

C++

1 2#include<iostream> 3#include "cinder/app/App.h" 4sing namespace std; 5 6int main(){ 7 8 cout << "success\n" ; 9 return 0; 10} 11

だとコンパイルができません。

エラーが以下のように表示されます。

C++

1Undefined symbols for architecture x86_64: 2 "boost::system::system_category()", referenced from: 3 ___cxx_global_var_init.2 in cinder-57c6a0.o 4 "boost::system::generic_category()", referenced from: 5 ___cxx_global_var_init in cinder-57c6a0.o 6 ___cxx_global_var_init.1 in cinder-57c6a0.o 7ld: symbol(s) not found for architecture x86_64 8clang: error: linker command failed with exit code 1 (use -v to see invocation) 9

他にも、同様なエラーがでるヘッダファイルがいくつかあります。

調べて見ても、自分では理解できなかったので、どなたか解決策をご教示いただけますでしょうか。

OSはMac10.14.6です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

おそらくは必要なライブラリがリンクされていない。
たぶん libboost_systemどーのこーの と思われる。

[追記] lib/macosx/libboost_system.a をコンパイル時に追加すればよさげ。

投稿2019/08/09 23:28

編集2019/08/10 02:33
episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

erdes

2019/08/10 05:26

できました!ありがとうございます。 /usr/bin/clang++ -std=c++11 cinder.cpp /Users/hiroshi/cinder_0.9.1_mac/lib/macosx/libboost_system.a -I /Users/hiroshi/cinder_0.9.1_mac/include/cinder でいけました。 もし参考にしたページなども教えていただければ幸いですm(_ _)m
episteme

2019/08/10 05:28

参考にしたページはない。エラーメッセージからライブラリが足りないと考え、cinder提供の中にそれっポいファイルを見つけた。
erdes

2019/08/10 05:42

なるほど。。。勉強しますm(__)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問