Xcode не строит статические библиотеки должным образом (функции не в них)

StackOverflow https://stackoverflow.com/questions/6816533

Вопрос

По сути, я могу создать и составить статическую библиотеку в XCode4, но функции не читаются OTOOL. Мне удалось это сделать однажды так что это сработало, но с тех пор он потерпел неудачу, поэтому я знаю, что мне не хватает очевидного шага.

Что я в настоящее время делаю, так это создаю новое приложение, основанное на представлении, в XCode4, я добавляю новую цель (номера), номерам я добавляю исходный файл с именем file.c, а его содержимое:

static int Get10()
{
    return 10;
}

Затем я составляю его (убедитесь, что я выбрал числа | ИСТИНСКИЙ ИДАКАТОР 4.3 в схеме схемы сборки).

Но когда я запускаю otool -s на Libnumbers. Я не получаю результатов:

Размер структур RANLIB: 0 (номер 0) Индекс смещения объекта Строка

Я знаю, что там должно быть кое -что, потому что, если я запускаю otool -s на правильно созданных Libnumbers. Я получаю несколько чисел вместо 0s:

Размер структур RANLIB: 16 (номер 2) Смещение объекта Индекс строки 136 0 136 7

Я действительно не знаю, что я делаю неправильно, я попробовал обратно, что я сделал с успешным компиляцией LIB, который я сделал, но на самом деле ничего не нашел, чтобы указать, почему функции, составленные с этим, но не на этом.

Это было полезно?

Решение

Не используйте static Если вы хотите использовать функцию вне блока перевода, в которой она определена. Вместо этого вы хотите внешнюю связь для функции, просто исключив static Часть (внешняя связь - это по умолчанию для функций).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top