Скомпилирование стороннего кода с кодом компании и различными флагами ABIC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Скомпилирование стороннего кода с кодом компании и различными флагами ABI

Сообщение Anonymous »

Мы используем продукт от поставщика, который имеет свою реализацию в C ++. Мы планируем использовать стороннюю библиотеку C ++ OpenXSLX в коде расширения приложения поставщика для анализа файлов Excel. OpenXSLX создан с использованием d_glibcxx_use_cxx11_abi = 1. Приложение поставщика построено поставщиком с d_glibcxx_use_cxx11_abi = 0. Ошибки. Существует ли обертка, который можно рассмотреть, или любая настройка в компиляторе, чтобы сделать эти CO существовать? /> Редактировать: < /p>
Реализован опция слоя обертки C, но все же имеет одинаковую проблему - библиотека не загружается, поскольку она не может найти символы из Libopenxlsx.a. < /p>
Файл заголовка: < /p>
#ifndef TEAMCENTER_APPLE_EXCELPARSING_HELPERAPI_HXX
#define TEAMCENTER_APPLE_EXCELPARSING_HELPERAPI_HXX

#ifdef __cplusplus
extern "C" {
#endif

extern int readAndValidateExcel();

#ifdef __cplusplus
}
#endif
< /code>
исходный файл: < /p>
using namespace OpenXLSX;
extern "C" {

int readAndValidateExcel() {
TC_write_syslog("Entering readAndValidateExcel\n");
XLDocument doc;
doc.create("/tmp/Demo01.xlsx", XLForceOverwrite);
auto wks = doc.workbook().worksheet("Sheet1");
wks.cell("A1").value() = 3.14159265358979323846;
wks.cell("B1").value() = 42;
wks.cell("C1").value() = " Hello OpenXLSX! ";
wks.cell("D1").value() = true;
wks.cell("E1").value() =
std::sqrt(-2); // Result is NAN, resulting in an error value in the Excel spreadsheet.
doc.save();
doc.close();

return 0;
}
}


Подробнее здесь: https://stackoverflow.com/questions/795 ... -abi-flags
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»