Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am beginner of Cygwin terminal. I am trying to run *.sh file on Windows 8 using the command ./file_name.sh, but it gives the error shown below.

Using prebuilt externals

ERROR: Cannot find 'make' program. Please install Cygwin make package or define the GNUMAKE variable to point to it.

I have installed Cygwin on the F drive. I Googled this error and set the variable path in Computer propertiesAdvanced system propertiesEnvironment variablesPathEdit and variable path is ;F:\cygwin\bin but does not work. How can I solve this problem?

Here is my file_name.sh script:

# set params
NDK_ROOT=/cygdrive/f/Android/android-ndk-r9b
COCOS2DX_ROOT=/cygdrive/f/Android/cocos2d-2.0-rc2-x-2.0.1
GAME_ROOT=$COCOS2DX_ROOT/molatx
GAME_ANDROID_ROOT=$GAME_ROOT/proj.android
RESOURCE_ROOT=$GAME_ROOT/Resources

buildexternalsfromsource=

usage(){
cat << EOF
usage: $0 [options]

Build C/C++ native code using Android NDK

OPTIONS:
   -s   Build externals from source
   -h   this help
EOF
}

while getopts "s" OPTION; do
    case "$OPTION" in
        s)
            buildexternalsfromsource=1
            ;;
        h)
            usage
            exit 0
            ;;
    esac
done

# make sure assets is exist
if [ -d $GAME_ANDROID_ROOT/assets ]; then
    rm -rf $GAME_ANDROID_ROOT/assets
fi

mkdir $GAME_ANDROID_ROOT/assets

# copy resources
for file in $RESOURCE_ROOT/*
do
    if [ -d "$file" ]; then
        cp -rf "$file" $GAME_ANDROID_ROOT/assets
    fi

    if [ -f "$file" ]; then
        cp "$file" $GAME_ANDROID_ROOT/assets
    fi
done

# copy icons (if they exist)
file=$GAME_ANDROID_ROOT/assets/Icon-72.png
if [ -f "$file" ]; then
    cp $file $GAME_ANDROID_ROOT/res/drawable-hdpi/icon.png
fi
file=$GAME_ANDROID_ROOT/assets/Icon-48.png
if [ -f "$file" ]; then
    cp $file $GAME_ANDROID_ROOT/res/drawable-mdpi/icon.png
fi
file=$GAME_ANDROID_ROOT/assets/Icon-32.png
if [ -f "$file" ]; then
    cp $file $GAME_ANDROID_ROOT/res/drawable-ldpi/icon.png
fi


if [[ $buildexternalsfromsource ]]; then
    echo "Building external dependencies from source"
    $NDK_ROOT/ndk-build -C $GAME_ANDROID_ROOT \
        NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/source
else
    echo "Using prebuilt externals"
    $NDK_ROOT/ndk-build -C $GAME_ANDROID_ROOT \
        NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt
fi
share|improve this question
    
Welcome to Super User! Please ensure your question is readable before posting. Use formatting to indicate code blocks or quoted messages. Capitalize 'I's, mark labels from UI messages and make sure they already match with the UI. I have improved your question for you. –  gronostaj Nov 22 '13 at 17:24
    
This doesn’t look like it’s your problem, but you might want to get into the habit of quoting all variable references; e.g., "$file", "$GAME_ANDROID_ROOT", "$NDK_ROOT", and "$COCOS2DX_ROOT". BTW, you need the curly braces only when you’re following the variable with a letter, digit, or colon, so you could say NDK_MODULE_PATH="${COCOS2DX_ROOT}:$COCOS2DX_ROOT/cocos2dx/platform/third_party/‌​android/source". –  Scott Nov 22 '13 at 18:57
add comment

1 Answer 1

It looks like "make" package for Cygwin is not installed. Try to install it, then run your script. Take a look at cyg-apt for example.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.