Какой ЛУЧШИЙ способ настроить библиотеку для поддержки ссылок на предварительно скомпилированное ПО для нескольких платформ, варианты компиляции - PullRequest
0 голосов
/ 03 октября 2008

Я поддерживаю библиотеку, которая содержит скомпилированные объекты, которые нужно связать с исполняемый файл третьей стороны. иногда исполняемый файл был скомпилирован для Solaris, иногда как 32-битное Linux-приложение, иногда это 64-битное Linux-приложение. То, что я хотел бы сделать, это передать один «путь» в библиотеку, и тогда приложение автоматически выберет правильный вариант библиотеки. Было бы хорошо, если бы он работал только на Linux, так что я мог бы просто определить путь с точки зрения ОС.

этот конкретный случай относится к библиотеке функций PLI / VPI, которую я хочу связать с симулятором Verilog.

Что у меня сейчас есть

root/path/${MYPLILIB_VER}/rootname/${MYPLIFLAVOR}/plilib.so

где вкус один из

solaris linux linux64

Вариант зависит от операционной системы, и если Linux работает на 64-битной платформе, это также зависит от версии 32/64-битной программы, которую я запускаю Я ищу лучший способ ..

Ответы [ 3 ]

1 голос
/ 03 октября 2008

Хм .. похоже, что ЭЛЬФ может делать то, что я хочу .. теперь для хорошего замечания по применению ..

и на последней странице этой статьи о создании DSO - некоторая информация на ожиданиях $ PLATFORM и $ LIB .. похоже на Linux я должен иметь возможность использовать структуру каталогов lib lib64 держать два объекта ..

чтобы узнать больше.

общие объекты для дезориентированных

1 голос
/ 03 октября 2008

Использовать системную информацию, указанную в "uname", для автоматической установки путей?
'uname -s' дает вам имя ядра (например, Linux / SunOS)
'uname -i' предоставит вам архитектуру (например, x86 / x86_64)

0 голосов
/ 17 июня 2009

Я не знаю, какой симулятор вы используете, но вы можете попробовать указать путь в переменной окружения LD_LIBRARY_PATH. Я верю, что симуляторы Cadence и Mentor будут там смотреть. Я не уверен насчет VCS. В руководстве пользователя вашего симулятора будут подробности.

...