Premake バージョン: 4.3 (ここからダウンロード)
Linux で make を実行すると、「g++: x86_64: No such file or directory」というエラーが表示されます。$(ARCH) を CFLAGS から削除すると、make は正常に動作します。
レッドハット:
- システム バージョン (「cat /etc/redhat-release」): Red Hat Enterprise Linux Server リリース 6.5 (サンティアゴ)
- カーネル バージョン (「uname -r」): 2.6.32-431.11.2.el6.x86_64
- "uname -p": x86_64
- "uname -m": x86_64
- C++ コンパイラ: g++
Ubuntu:
- システム バージョン (「cat /etc/issue」): Ubuntu 12.04.5 LTS
- カーネル バージョン (「uname -r」): 3.2.0-67-generic
- "uname -p": x86_64
- "uname -m": x86_64
- C++ コンパイラ: g++
Macでも同じプログラムを正常に実行しました。
マック:
- システムバージョン: OS X 10.10 (14A389)
- カーネル バージョン: ダーウィン 14.0.0
- "uname -p": i386
- "uname -m": x86_64
- C++ コンパイラ: clang
premake4.lua
solution "Hello"
configurations { "Debug", "Release" }
configuration { "Debug" }
defines { "_DEBUG", "DEBUG" }
flags { "Symbols", "ExtraWarnings" }
configuration { "Release" }
defines { "NDEBUG" }
flags { "Optimize" }
project "hello"
kind "ConsoleApp"
language "C++"
location "."
files { "hello.cpp" }
hello.cpp は標準の hello world プログラムです。
$(ARCH) の理由はありますか? clang と g++ の両方のドキュメントを見ると、フラグなしでアーキテクチャ タイプだけを提供することがコンパイラ オプションであるようには見えません。何か不足していますか?