Можно ли заставить `xrdb` игнорировать одинарные кавычки в строке комментария?

Имя пакета git-1.7.12.4-1.el5.rf.x86_ указывает, что он пытается подключиться к зависимости CentOS 5, но вы используете CentOS 6. Скорее всего, когда вы установили репозиторий repoforge, вы установили CentOS 5 вместо CentOS 6. Если вы удалите CentOS 5 и установите CentOS 6, это должно решить вашу проблему.

4
25.06.2017, 00:32
2 ответа

Похоже, это связано с изменением поведения по умолчанию GNU cpp, который xrdbиспользует в качестве препроцессора по умолчанию. В частности, согласно The C Preprocessor :10.1 Традиционный лексический анализ:

Generally speaking, in traditional mode an opening quote need not have a matching closing quote.

Однако cppпредоставляет параметр командной строки для работы в традиционном режиме:

-traditional
-traditional-cpp
    Try to imitate the behavior of pre-standard C preprocessors, as opposed to ISO 
    C preprocessors. See Traditional Mode.

, тогда как xrdbпозволяет явно определить препроцессор в его командной строке:

-cpp filename
       This  option  specifies the pathname of the C preprocessor pro‐
       gram to be used.  Although xrdb was designed to  use  CPP,  any
       program  that  acts  as a filter and accepts the -D, -I, and -U
       options may be used.

Следовательно, должна быть возможность подавить предупреждение с помощью

xrdb -cpp "/usr/bin/cpp -traditional-cpp"  ~/.Xresources

или

xrdb -cpp "/usr/bin/cpp -traditional"  ~/.Xresources
7
27.01.2020, 20:52

Я обошел ошибку, заменив одинарные кавычки (' )апострофами Unicode (' )в комментариях.Xresources.

Существуют другие варианты Unicode, если апостроф вам не подходит.

0
14.01.2021, 01:14

Теги

Похожие вопросы