Я использовал agvtool
для одного из своих приложений для iPhone по общему принципу и недавно нашел причину, по которой я хочу иметь возможность проверять переменную версии (чтобы я мог повторно скопировать справочный контент вКаталог документов, если он устарел).Переменная MyAppVersionNumber
, определенная в MyApp_vers.c, автоматически генерируется во время сборки.Он генерируется в файле .o и отображается в (предыдущей версии?) Самого связанного приложения.Пока все хорошо, казалось бы.
Итак, теперь я объявил extern double MyAppVersionNumber
в файле .m
, где мне нужно это использовать (и позже попробую использовать его, просто в * 1007).* заявление, чтобы начать работу), и я пытаюсь построить для симулятора iPhone, и получаю ошибку ссылки:
"_MyAppVersionNumber", referenced from:
_MyAppVersionNumber$non_lazy_ptr in HelpViewController.o
(maybe you meant: _MyAppVersionNumber$non_lazy_ptr)
ld: symbol(s) not found
collect2: ld returned 1 exit status
Итак, что мне нужно сделать по-другому, чтобы получить эту ссылку?
Я погуглил за $ non_lazy_ptr и agvtool и ничего не получил вообще, и только за $ non_lazy_ptr, который дал некоторые вещи, но в основном относился к библиотекам, что на самом деле не так (не так ли?).И в моих исследованиях до сих пор я еще не открыл страницу об agvtool, в которой подробно рассказывается об использовании переменных - те, которые я прочитал, просто случайно говорят об объявлении переменной extern, что я и сделал.
Кто-нибудь знаком с этим и / или иным образом может оказать любую помощь?
Спасибо!