Мое приложение C ++ отлично работает с динамическим связыванием по умолчанию, но ... Я пытаюсь статически связать все библиотеки с приложением, поскольку, к сожалению, пользователи не могут установить соответствующие библиотеки (или, точнее, их провайдеры не будут на серверах в использования). Поэтому я добавил -static в качестве опции ссылки.
LD не может открыть libgcc_s.a, что кажется неправильным.
LD успешно открывает libgcc.a
Если я правильно понимаю (и, пожалуйста, исправьте меня, если я ошибаюсь!):
$ gcc - версия
gcc (Ubuntu 4.8.4-2ubuntu1 ~ 14.04.4) 4.8.4 Copyright (C) 2013 Free Software Foundation, Inc.
$ uname -s -r --m
Linux 3.19.0-51-generic x86_64
Заранее благодарен за любую помощь, С наилучшими пожеланиями, Дейв
PS:
g++ -Xlinker -static -o "airparse" ./src/ArcBuild.o ./src/ParsTool.o ./src/airparse.o ./src/airway.o ./src/coordint.o ./src/mapBuild.o
./src/mapdata.o ./src/n_assert.o
/usr/bin/ld: cannot find -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
make: *** [airparse] Error 1
К сожалению, это появляется - статическая опция ссылки в , gcc (4.8.4-2ubuntu1~14.04.4 Ubuntu) 4.8.4 повреждается. Возможно, какая-то ошибка спецификаций?
Так или иначе, я работал вокруг проблемы путем обновления до gcc (8.3.0-6ubuntu1 Ubuntu) 8.3.0 и эта версия ссылки с - статический AOK.