我想从我的git中为Windows bash运行cpp
可执行文件。我不明白为什么可以使用./Main
运行它,但是不能使用bash Main
或bash Main.exe
运行它。在后一种情况下,我得到一个错误:
无法执行二进制文件
main.cpp
#include<iostream>
int main()
{
std::cout<<"Hello World";
return 0;
}
script.sh
echo "Hello from Bash script.."
echo "Hostname:${1}"
echo "Port:${2}"
echo "Listing contents:"
ls -a
echo "Launching cpp executable:"
path=$(pwd)
echo "Current path:${path}"
bash "${path}/Main"
要编译C ++代码,请使用:g++ -o Main main.cpp
。
出什么问题了?有人可以解释吗?
答案 0 :(得分:3)
只需删除脚本最后一行上的bash
:
"${path}/Main"
别忘了使其可执行。
chmod +x script.sh
对我有用:
./script.sh hostname 80
Hello from Bash script..
Hostname:hostname
Port:80
Listing contents:
. .. Main main.cpp script.sh
Launching cpp executable:
Current path:/tmp/test
Hello World