10

I have a bash script with this line:

cp -R /usr/lib/gcc/x86_64-linux-gnu/$GCC_VERSION/* /app/.apt/usr/lib/gcc/x86_64-linux-gnu/$GCC_VERSION

Full script: https://github.com/virtualstaticvoid/heroku-buildpack-r/blob/cedar-14/bin/compile

Unfortunately it fails with cp: target ‘/app/.apt/usr/lib/gcc/x86_64-linux-gnu/4.8’ is not a directory

Any tips what could be wrong? Unfortunately I do not have much experience with bash.

Previously this script was running alone and it was working. Now I had to add some apt-get install before it, and it started to fail so I am trying to fix it.

Archeg
  • 7,785
  • 5
  • 34
  • 81

2 Answers2

12

There is no directory with the name 4.8...Thats your problem :)

Run this before your cp command:

mkdir -p /app/.apt/usr/lib/gcc/x86_64-linux-gnu/$GCC_VERSION

It creates all directories in the given path!

Daniel
  • 643
  • 9
  • 14
4

This should work, add / at the end of cp command to make it clear for it that its dir:

mkdir -p /app/.apt
cp -R $BUILD_DIR/.apt/* /app/.apt/
kenorb
  • 118,428
  • 63
  • 588
  • 624
Drako
  • 659
  • 7
  • 20