Я пытаюсь преобразовать библиотеку на основе Windows, которую моя компания производит для работы в AIX.В настоящее время мы можем запустить его на Solaris и Linux, но AIX вызывает некоторые дополнительные проблемы.Я не уверен, является ли это проблемой установки ОС или проблемой кодирования, но я сначала пробую подход к кодированию.Библиотека экспортирует некоторые функции, используя соглашение о стиле C из различных модулей.Мое тестовое приложение может успешно вызывать некоторые функции из некоторых модулей.Однако есть один конкретный модуль, в котором каждая функция работает с ошибками.Я поместил сообщение журнала Cout в верхней части функции, и это не получает удар.Просмотр coredump с помощью dbx показывает только то, что ошибкой является недопустимый код операции 0x0.Я попытался написать тестовое приложение, которое экспортирует функцию из библиотеки и использует ее в приложении, и это нормально.Я также попытался написать тестовое приложение меньшего размера, которое содержит ссылки только на модуль, содержащий функции-нарушители.В этом случае я могу запустить регистрацию в функции.У меня отключены все оптимизации и одни и те же флаги / версии компилятора для приложения и библиотеки.
Мне кажется, что библиотека слишком большая / экспортирует слишком много функций, и что-то становится поврежденным / переполненным.У меня нет опыта работы с AIX, поэтому любые указания относительно того, вероятно ли это или другие способы использовать его для отладки, будут весьма полезны.