2011-08-11 2 views
0

По-видимому, Solaris 10 больше не поддерживает статические ссылки. Поэтому мне интересно, может ли кто-нибудь помочь мне переписать make-файл так, чтобы он поддерживал динамическое связывание. По существу, следующая команда компоновщика дает мне сообщение об ошибке, что _memset не найден. Сам Memset находится в стандартной библиотеке, которая НЕ должна быть связана статически. Вот команда линкер:От Static to dynamic linking на Solaris 10

/USR/к.х.н./бен/л.д. -oQ -e start_master -dn -z DEFS -М ../../../mapfile.q {список объектных файлов}

Кто-нибудь знает, как я могу запустить этот запуск на Solaris 10 сейчас?

Спасибо!

+1

Основное предположение здесь неверно. Solaris, безусловно, поддерживает статическое связывание с любой статической библиотекой, которую вы имеете - многие команды построены таким образом. То, что Solaris 10 и более поздние версии не поддерживает, - это статическая привязка к системным библиотекам - там просто нет libc.a или другой статической системной библиотеки. – alanc

ответ

2

насчет

/usr/ccs/bin/ld -o q -e start_master -Bstatic -z defs -M ../../../mapfile.q {list of object files} -Bdynamic -lc