Premake не работает с g ++ в Linux?

0

Версия Premake: 4.3 (скачан здесь)

При запуске make в Linux я получаю следующую ошибку: "g++: x86_64: Нет такого файла или каталога". Удалив $ (ARCH) из CFLAGS, сделайте работу прекрасной.

Красная Шапка:

  • Версия системы ("cat/etc/redhat -r elease"): выпуск 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.

Mac:

  • Версия системы: OS X 10.10 (14A389)
  • Версия ядра: Darwin 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 - стандартная программа приветствия.

Есть ли причина для $ (ARCH)? Изучая документацию как для clang, так и для g++, похоже, что предоставление только типа архитектуры без флага является компилятором. Я что-то упускаю?

  • 0
    Это, наверное, ошибка. Попробуйте запустить premake без определенной переменной среды ARCH.
  • 0
    Спасибо @nm! Это работает, но это похоже на обходной путь. Я могу добавить вызов сценария оболочки к моему сценарию premake4.lua, чтобы сбросить его, или я могу сбросить его вручную каждый раз, когда открываю новую оболочку, но оба эти параметра кажутся временным решением проблемы.
Показать ещё 1 комментарий
Теги:
premake
redhat

1 ответ

0
Лучший ответ

Эта переменная $ (ARCH) находилась в сгенерированных make файлах довольно долгое время, но, похоже, она изжила свою полезность. На данный момент я удалил его; если в сборке все еще нужно вводить флаги, мы можем найти более безопасное имя.

Вы можете получить фиксированную версию из репозитория Premake 4.x BitBucket.

  • 0
    Спасибо @starkos!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню