• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Mac C Undefined x86_64)

Mac C Undefined x86_64

このQ&Aのポイント
  • MacOSX LionのIntel Core 2 duoでC言語を学習中です。
  • 自分のMacでLinuxで作成したプログラムを動かそうとすると、Undefined symbols for architecture x86_64というエラーが出ます。
  • FTGLとGLFWのインストールとコンパイルの変更を試しましたが、解決しませんでした。どうすれば解決できるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

i386でもx86_64でも _ftglRenderFont が出てる、ってことは、単にライブラリの指定間違いでは? -L/opt/local/lib でlibftgl.aのある場所の指定もしていないし、-lftglも付いてないようですが。 Macのcc(実体はgcc)では、デフォルトではカーネルにあわせて32bit,64bitのバイナリーを作ります。 特定のアーキテクチャを指定するときは-arch i386, -arch x86_64 を使います。 実行環境とビルド環境が変わらないなら、ただコンパイルすればいいです。 x32とx64を混在するようなら、universalバイナリにするのがよいです。 MacPortsでインストールできるライブラリでは、大抵、variantにuniversalがあるので、 port install XXXX +universal と指定するとよいです。(すでにインストールしてあるものはport upgrade --enforce-variants XXX +universal という感じに、variant適用してのアップグレードを使う) あとは、glfwをどうやってインストールしたかによっては、さらに変更が必要かもしれません

nasanaut
質問者

お礼

ありがとうございます。Linkerをlibftgl.aとつないだら動きました.

関連するQ&A