Проблема при использовании объектного файла C (.о) в разных компьютерах


Я пытаюсь создать объектный файл, который можно использовать на любом компьютере. Поэтому я создал кучу функций и поместил их в a .C файл. Используется gcc-c myfile.c, который производит myfile.o. (я работаю под управлением Windows XP и получил gcc от DevC++) затем я создаю другую программу, которая использует мой объектный файл.

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

Когда я пытаюсь перекомпилировать .c файл моего объектного файла на другом ПК и повторно запустить программу, кажется, работает.

Так что я не понимаю, почему я не могу просто скомпилировать .o файл один раз на одной машине, скопируйте его на другую машину и создайте программу, которая использует тот же объектный файл без необходимости перекомпиляции объектного файла.

Спасибо!

2 2

2 ответа:

Почему бы вам не заняться созданием общей библиотеки для перемещения объектного кода? (.так или .dll)

Скорее всего, это связано с тем, что вы используете разные библиотеки C. Попробуйте использовать одну и ту же версию gcc, установленную из одного пакета, на всех компьютерах.

Поэтому вы используете версию gcc от DevC++, не смешивайте ее с другими пакетами gcc sush как MinGW.