Я поддерживаю библиотеку, которая поставляется в комплекте с .xsd
файлами для проверки XML. В настоящее время пользователи должны сообщить библиотеке, где находятся эти файлы, установив переменную среды. Я хотел бы иметь возможность компилировать в этом месте, так как забывание установить переменную среды является распространенной проблемой.
Я могу сделать это, если вы собираете библиотеку из исходного кода. Поскольку система сборки (CMake) знает путь установки, она может просто установить определение препроцессора, указывающее на каталог, в котором XSD-файлы go.
Когда дело доходит до распространения предварительно скомпилированного выпуска, это не работает, так как пути на сервере сборки не будут совпадать с пользователями.
Структура директории установки выглядит следующим образом:
<install_dir>
- conf/
- foo.xsd
- bar.xsd
- lib/
- mylib.a
Как я могу сказать mylib.a
, где foo.xsd
живет, без использования абсолютных путей, которые будут указывать c для сборки сервер