Я собираю довольно большой проект из исходного кода. Компиляция всегда заканчивается: error: неверное преобразование из 'const char *' в 'char *' [-fpermissive]
Я уже скомпилировал этот проект год назад. Так что я знаю решение этого. На самом деле я нашел больше решений:
- Добавление Typecast к соответствующей строке кода cpp (Это привело к бесконечному количеству изменений в каждом файле. Поэтому я нашел следующее решение.)
- Изменение make-файла для компиляции этого файла с параметром -fpermissive. (Мне пришлось изменить много строк в каждом make-файле. Поэтому я нахожу еще лучшее решение.)
- «g ++» или "gcc" хранились в переменной, поэтому я добавил -fpermissive к этим переменным.
Это лучшее решение, которое у меня есть. Достаточно добавить эту опцию к каждому make-файлу один раз. К сожалению, это программное обеспечение имеет большое количество подкаталогов. Поэтому мне нужно изменить более 100 make-файлов. Это заняло у меня целый день год назад.
Есть ли способ, как сделать это быстрее.
Как насчет этого? alias gcc = 'gcc -fpermissive' Я не знаком с псевдонимами. Но это должно быть легко попробовать. Правильный ли синтаксис? И это правильно? псевдоним g++ = 'g++ -fpermissive'? И нужно ли как-то экспортировать псевдоним? Будет ли программа make уважать псевдоним?
Должен ли я изменить скрипт ./configure? Или ./configure.in? Или другой файл?