это коротко и просто работает. Все три будут работать во многих случаях, и вариант 2 может не работать при связывании статических программ. Фактический шаг компоновки для lib одинаков во всех вариантах, как я понимаю.

ажется странным использовать-Wl,-Bstatic чтобы рассказатьgcc с какими библиотеками я хочу связать статически. В конце концов я говорюgcc непосредственно вся другая информация о связывании с библиотеками (-Ldir, -llibname).

Можно ли напрямую указать драйверу gcc, какие библиотеки должны быть связаны статически?

Разъяснение: Я знаю, что если определенная библиотека существует только в статических версиях, она будет использовать ее без-Wl,-Bstatic, но я хочу подразумеватьgcc предпочесть статическую библиотеку. Я также знаю, что указание файла библиотеки напрямую связано с ним, но я предпочитаю сохранить семантику для включения статических и динамических библиотек одинаковыми.

Ответы на вопрос(2)

Ваш ответ на вопрос