如何修复/ bin / sh:语法错误:意外“(”而不更改为/ bin / bash

时间:2013-07-30 10:37:01

标签: bash shell makefile

我有这个makefile:

SHELL = /bin/sh
INSTALL =/usr/bin/install
INSTALL_PROGRAM = $(INSTALL)
INSTALL_DATA = $(INSTALL) -m 644
STRIP=$(TARGET_CROSS)strip
EXEC=monApp
SRC= $(wildcard src/*.cpp)
OBJ= $(SRC:.cpp=.o)
CXX=$(TARGET_CROSS)g++
CXXFLAGS = -I./include –I$(STAGING_DIR)/include –I(STAGING_DIR)/usr/include/
LDFLAGS = -g -Wall -L$(STAGING_DIR)/lib –lEGL –lGLESv2 –lIMGegl –L$(STAGING_DIR)/usr/lib
all: $(EXEC)
$(EXEC): $(OBJ)
    $(CXX) -o $@ $^ $(LDFLAGS)
%.o: %.cpp
    @$(CXX) -o $@ -c $< $(CXXFLAGS)

.PHONY: clean
clean:
    @rm -rf src/*.o
    @rm -rf $(EXEC)
install: $(EXEC)
    mkdir -p ./package.release
    $(INSTALL_PROGRAM) $(EXEC) ./package.release/
    $(STRIP) ./package.release/$(EXEC)
uninstall:
    @rm -rf ./package.release/ 

如何在不更改/ bin / bash的情况下解决此问题(我没有bash所以我必须使用sh)?

谢谢,

2 个答案:

答案 0 :(得分:3)

由于对mark a comment as an answer的功能请求仍然被拒绝,我在此处复制了J.F. Sebastian的上述解决方案。

在CXXFLAGS

中向$添加缺失的(STAGING_DIR)

答案 1 :(得分:0)

我从项目文件夹的名称中删除了括号。

当绝对路径包含括号时,CMAKE无法建立。

使用Qt Creator和CMake构建C ++项目时发生错误:

/bin/sh: 1: Syntax error: "(" unexpected