2017-06-07 75 views
0

我的環境是Ubuntu16.04。我怎麼能添加一個需要另一個文件到命令行的二進制文件?

我的二進制文件的floder的結構是:

copy 
├── creat 
├── creat.cpp 
├── makeup.sh 
├── MODEL.cpp 
└── README.md 

而且creat是我想要添加到命令行中的二進制文件。

MODEL.cpp是creat需要的文檔。

在creat.cpp我應該打開MODEL.cpp這樣的:

in.open("MODEL.cpp");

,但我想任何其它誰克隆了這個回購可以輕鬆地使用它。 所以我寫了一個shell腳本makeup.sh

#!/bin/bash 
g++ creat.cpp -o creat 
sudo cp creat /usr/local/bin 
sudo cp MODEL.cpp /usr/local/bin 
echo "Now you can try it" 

但是當我用命令creat,終端告訴我:

Can not find MODEL.cpp 

但MODEL.cpp退出在/ usr/local/bin目錄。

我不知道那有什麼問題,我該怎麼辦?

回答

0

這是因爲MODEL.cpp不存在於執行creat的位置的當前位置,即使creat和MODEL.cpp都位於同一文件夾中。

最好的選擇是保持依賴MODEL.cpp文件在/etc文件夾中。

改變這一行in.open("MODEL.cpp");in.open("/etc/MODEL.cpp");

所以它不會從您執行creat二進制文件,將工作關係。

+0

非常感謝 – HumbertZhang

相關問題