Eclipse CDT Post-构建命令错误
Eclipse CDT Post-Build commands error
我有一个 C++ 项目,我使用 Eclipse CDT 3.8.1 作为 IDE 工具,工作区有 5 个不同的项目...
我的一个项目是一个共享库,在编译结束时我想把它的代码复制到一个test/bin目录下进行测试。
我转到项目属性 -> C/C++ 构建 -> 设置 -> 构建步骤,在 "Post-build steps"、"Command",我添加了:
cp *.so ../../../bin
(OBS:../../../bin 是调试文件夹中的正确路径 - 我已经检查过)。
我在 post build:
上收到以下错误
cp *.so ../../../bin
cp: cannot stat ‘*.so’: No such file or directory
我说:好的,这可能是权限问题,所以我把post命令改成了:
whoami;ls -al; ls *.so;
然后我进入了 Eclipse 控制台:
whoami
aeidev
ls -al
total 264
drwxrwxr-x 3 aeidev aeidev 4096 Apr 25 15:55 .
drwxrwxr-x 5 aeidev aeidev 4096 Apr 22 16:27 ..
-rwxrwxr-x 1 aeidev aeidev 242556 Apr 25 15:55 libaeirtuaccess.so
-rw-rw-r-- 1 aeidev aeidev 1763 Apr 23 20:47 makefile
-rw-rw-r-- 1 aeidev aeidev 245 Apr 23 20:46 objects.mk
-rw-rw-r-- 1 aeidev aeidev 526 Apr 23 20:47 sources.mk
drwxrwxr-x 2 aeidev aeidev 4096 Apr 25 15:41 src
ls *.so
15:55:11 Build Finished (took 1s.80ms)
然后我再次将它们更改为 ls *.so
我得到了:
ls -al *.so
ls: cannot access *.so: No such file or directory
15:57:50 Build Finished (took 715ms)
这是一个非常奇怪的行为。在同一个工作区中,我有一个不同的共享库,原来的 cp *.so
工作正常...
知道这里发生了什么吗?
这是一个已知的 Eclipse 错误吗?
感谢您的帮助...
我相信默认情况下命令不会在 shell 中执行,因此不会评估通配符。尝试像 /bin/sh -c 'cp *.so ../../../bin/'
那样执行。您还应该使用 Eclipse 的内置 variables 复制到所需的路径。
我有一个 C++ 项目,我使用 Eclipse CDT 3.8.1 作为 IDE 工具,工作区有 5 个不同的项目...
我的一个项目是一个共享库,在编译结束时我想把它的代码复制到一个test/bin目录下进行测试。
我转到项目属性 -> C/C++ 构建 -> 设置 -> 构建步骤,在 "Post-build steps"、"Command",我添加了:
cp *.so ../../../bin
(OBS:../../../bin 是调试文件夹中的正确路径 - 我已经检查过)。
我在 post build:
上收到以下错误cp *.so ../../../bin
cp: cannot stat ‘*.so’: No such file or directory
我说:好的,这可能是权限问题,所以我把post命令改成了:
whoami;ls -al; ls *.so;
然后我进入了 Eclipse 控制台:
whoami
aeidev
ls -al
total 264
drwxrwxr-x 3 aeidev aeidev 4096 Apr 25 15:55 .
drwxrwxr-x 5 aeidev aeidev 4096 Apr 22 16:27 ..
-rwxrwxr-x 1 aeidev aeidev 242556 Apr 25 15:55 libaeirtuaccess.so
-rw-rw-r-- 1 aeidev aeidev 1763 Apr 23 20:47 makefile
-rw-rw-r-- 1 aeidev aeidev 245 Apr 23 20:46 objects.mk
-rw-rw-r-- 1 aeidev aeidev 526 Apr 23 20:47 sources.mk
drwxrwxr-x 2 aeidev aeidev 4096 Apr 25 15:41 src
ls *.so
15:55:11 Build Finished (took 1s.80ms)
然后我再次将它们更改为 ls *.so
我得到了:
ls -al *.so
ls: cannot access *.so: No such file or directory
15:57:50 Build Finished (took 715ms)
这是一个非常奇怪的行为。在同一个工作区中,我有一个不同的共享库,原来的 cp *.so
工作正常...
知道这里发生了什么吗? 这是一个已知的 Eclipse 错误吗?
感谢您的帮助...
我相信默认情况下命令不会在 shell 中执行,因此不会评估通配符。尝试像 /bin/sh -c 'cp *.so ../../../bin/'
那样执行。您还应该使用 Eclipse 的内置 variables 复制到所需的路径。