Вы не хотите генерировать код непосредственно в /usr/bin
.
Вы генерируете свой код в своей пользовательской папке, возможно, создаете подкаталог с именем cppwork
или что-то в этом роде.
cd
mkdir cppwork
cd cppwork
g++ -g a.cpp -o a
Как только вы скомпилировали в своем каталоге, вы скопируете файл, используя install
, который также позаботится об удалении отладки, если таковые имеются (то есть -g
говорит, что нужно сохранить отладочную информацию - удаление не обязательно) .
sudo install -s a /usr/bin/a
Как видите, место, где я использую sudo
, - это команда install
.
При этом я никогда не использую их напрямую. Сейчас я использую cmake
, что означает, что все работает автоматически . Но это было бы другое обсуждение.