У меня есть сторонняя статическая библиотека, которая была построена на AIX с gcc. Когда я пытаюсь связать эту библиотеку с помощью компилятора xlC AIX, я получаю все виды неразрешенных символов. Я считаю, что это связано с различиями в названии. Если я получаю измененные имена из библиотеки с помощью команды nm, есть ли что-то принципиально неправильное в построении двоичного кода с помощью компилятора xlC, если он может найти символы, которые он ищет? Какие проблемы я прошу?связывает статическую библиотеку C++, созданную gcc, с программой, скомпилированной с помощью xlC?
Q
связывает статическую библиотеку C++, созданную gcc, с программой, скомпилированной с помощью xlC?
0
A
ответ
3
Это, скорее всего, не сработает; см. вопрос C++ Faq Lite.
C++ намного сложнее, чем C, и есть много дополнительных вещей, которые могут быть несовместимы.
Для нескольких примеров совместима обработка исключений? Являются ли объекты данных одинаковыми (в C, порядок указан, но на C++ он может варьироваться в зависимости от спецификаторов доступа)? Работают ли vtables одинаково? Как обрабатывается dynamic_cast
?
Разница в управлении именами мешает вам связывать, но есть много других различий, которые могут вас укусить.
Возможно, вам лучше использовать версию gcc, которую они сделали. Это то, что я должен был сделать в аналогичном проекте один раз.
Смежные вопросы
- 1. MATLAB связывает статическую библиотеку?
- 2. Как вы связываете статическую библиотеку C++ с программой C?
- 3. Android NDK не связывает предварительно созданную библиотеку
- 4. GCC не связывает статическую библиотечную зависимость (makefile)
- 5. Как создать статическую библиотеку в nasm и ссылку с gcc?
- 6. GCC, связывающий статическую библиотеку
- 7. GCC не связывает библиотеку с нестандартным путем
- 8. Как связать статическую библиотеку python с моей программой на C++
- 9. Невозможно использовать статическую библиотеку VisualStudio с GCC
- 10. Как использовать статическую библиотеку с gcc под linux
- 11. ld не связывает статическую библиотеку с динамической библиотекой, даже если все файлы скомпилированы с помощью fPIC
- 12. GCC linker не связывает стандартную библиотеку
- 13. SWIG - включить существующую статическую библиотеку C++ (.lib) с помощью cygwin
- 14. Ссылка на статическую библиотеку VS2005 с gcc в Windows
- 15. Создайте статическую библиотеку только с помощью Gradle
- 16. makefile включает статическую библиотеку - C
- 17. Включите предварительно созданную статическую библиотеку на существующий модуль AOS
- 18. Как связать статическую библиотеку с динамической библиотекой в gcc
- 19. Связывание скомпилированной библиотеки pgi с gcc-компоновщиком
- 20. Ссылка на C скомпилированную статическую библиотеку на C++-программу
- 21. XCode связывает статическую библиотеку (GLEW) пытается загрузить dylib
- 22. Как создать статическую библиотеку C++ с помощью Xcode?
- 23. Правильно Связать статическую библиотеку с библиотекой C math
- 24. По умолчанию gcc 4.8.4 статически связывает математическую библиотеку?
- 25. Создать статическую библиотеку, включая ncurses
- 26. Как создать статическую библиотеку, связанную с другой библиотекой, и ее можно использовать третьей программой, которая связывает обе библиотеки?
- 27. Связать статическую библиотеку с DLL
- 28. Что такое gcc-эквивалент флага -qnoweakexp xlC?
- 29. С помощью GCC, как мне экспортировать только определенные функции в статическую библиотеку?
- 30. Как разобрать статическую библиотеку .lib?
спасибо. – ojblass