Как создать псевдоним оболочки Linux, чтобы дать компилятору g ++ путь к файлу для компиляции? - PullRequest
0 голосов
/ 20 февраля 2019

Я хочу создать псевдоним для следующего предложения:

g++ -g -pedantic -Wall -o executablefilenamehere pathoffiletocompilehere

Поскольку мне приходится часто компилировать отдельные файлы.

Для этого я пытаюсьсоздание txt-файла с именем выходного файла и путем к файлу для компиляции.Итак, у меня есть txt с именем tocompile.txt, который содержит:

test /home/me/test.cpp

, затем я назначаю переменную, которую я вызываю, для компиляции содержимого tocompile.txt:

tocompile=`cat tocompile.txt`

Это работает, потому что если я делаю echo $ tocompile, я получаю: test /home/me/test.cpp

Итак, я пытаюсь создать псевдоним, выполняя:

alias gxxcomp='g++ -g -pedantic -Wall -o $tocompile'

Это не работает, когда я делаю:

gxxcomp

Я получаю:

g++: error: missing filename after ‘-o’
g++: fatal error: no input files
compilation terminated.

Какой правильный способ сделать это?

1 Ответ

0 голосов
/ 20 февраля 2019

Работает ли

alias gxxcomp='g++ -g -pedantic -Wall -o `cat tocompile.txt`'

у вас?По крайней мере, в моей версии bash, которая работает.

Но, как уже упоминалось в моем комментарии, я бы порекомендовал простой Makefile для этой работы.Создайте файл с именем Makefile с содержимым

test: test.cpp
        g++ -g -pedantic -Wall -o $@ $<

и запустите make .Посмотрите учебник, например, этот .

...