Возможно, проблема в конфигурации почтового сервера, чтобы избежать подобных проблем или вам не нужно беспокоиться о проблеме с почтовым сервером, я рекомендую вам использовать PHPMailer , это плагин у которого есть все необходимое для отправки почты, единственное, что вы должны учесть, это иметь SMTP-порт (порт: 25 и 465), включен
require_once 'PHPMailer/PHPMailer.php';
require_once '/servicios/PHPMailer/SMTP.php';
require_once '/servicios/PHPMailer/Exception.php';
$mail = new \PHPMailer\PHPMailer\PHPMailer(true);
try {
//Server settings
$mail->SMTPDebug = 0;
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'correo@gmail.com';
$mail->Password = 'contrasenia';
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;
//Recipients
$mail->setFrom('correo@gmail.com', 'my name');
$mail->addAddress('destination@correo.com');
//Attachments
$mail->addAttachment('optional file'); // Add files, is optional
//Content
$mail->isHTML(true);// Set email format to HTML
$mail->Subject = utf8_decode("subject");
$mail->Body = utf8_decode("mail content");
$mail->AltBody = '';
$mail->send();
}
catch (Exception $e){
$error = $mail->ErrorInfo;
}
Если ваши Архитектуры и Действительные Архитектуры в порядке, вы можете проверить, добавили ли вы $(inherited)
, которые добавят флаги компоновщика, сгенерированные в контейнерах, к другим флагам Linker, как показано ниже: [/g0]
Ни одно из решений не исправляет эту ошибку в моем случае (Xcode 9), с TesseractOCRiOS
. После нескольких часов проб и ошибок я придумал хорошее решение. Я просто удалю 'pod 'TesseractOCRiOS', '~> 4.0.0'
в Podfile
, запустив pod install
. Затем добавьте pod 'TesseractOCRiOS', '~> 4.0.0'
обратно в Podfile
и снова запустите pod install
.
Удар! Оно работает!
Я знаю, что это старая ветка. Тем не менее, эта же проблема началась со мной после перехода на последнюю версию CocoaPods (1.0.0) и попытку переустановки всех контейнеров. Я столкнулся с ошибкой компоновщика «Отсутствующие символы для armv64». Как ни странно, я решил это, выполнив следующие шаги:
Реверсирование порядка зависимостей в podfile и перестройка стручков решила проблему.
Установите архитектуры в armv7 armv7s, создайте активную архитектуру Только для NO, для каждой цели в проекте, включая все в Pods
Для меня я использую opencv 2.4.9 в xcode 7.2 для iOS, и произошли ошибки, и я разрешаю ошибки, используя opencv через pod install, а не автономную opencv framework.
Вы можете попробуйте добавить текст opencv pod ниже и удалить автономную структуру opencv, если вы использовали.
pod 'OpenCV', '2.4.9'
В моем случае мне пришлось искать
C++ Standard Library
и убедиться, что выбран libc++
.
Как morisunshine ответ указал в правильном направлении, небольшая настройка в его ответе решила мою проблему для iOS8.2. Спасибо ему.
Я решил эту проблему, установив, что :
ARCHS = armv7
VALID_ARCHS = armv6 armv7 armv7s arm64
BUILD ACTIVE ARCHITECTURE ONLY= NO
У меня была такая же проблема после обновления до Xcode 5.1 и исправлена ее, установив Архитектуры в armv7 armv7s
Добавление «Security.framework» сделало трюк для меня.
Я решил это, установив действительные арки в armv7 armv7s и установив активную архитектуру сборки только в YES в релизе, а затем выполнив новую «установку pod» из командной строки
Застрял в этом вопросе весь день.
У меня было несколько схем, оно отлично компилировалось для Demo, Internal, Release - однако схема отладки просто не компилировалась и жаловалась на libPods. отсутствует.
Решение состояло в том, чтобы перейти к Project -> Target -> Build Settings и изменить «Build Active Architecture Only» на YES. Очистите и постройте! Наконец, решены частые зуд головы
Следующее сработало для меня, чтобы GPUImage компилировал без ошибок на Xcode 5.1 для 64-битного симулятора и сетчатки iPad Mini без , нуждающихся в удалении arm64 из списка Valid Architectures (который побеждает назначение владения 64-битным устройством для тестирования 64-битной производительности).
Загрузите папку .zip с страницы GitHub: https://github.com/BradLarson/GPUImage ]
Разархивируйте и перейдите в папку «framework». Отсюда добавьте и скопируйте папку «Источник» в проект Xcode. Убедитесь, что «Скопировать элементы в папку целевой группы» отмечен галочкой, а также «Создать группы для любых добавленных папок». Это скопирует общие файлы, iOS и заголовки / файлы Mac в ваш проект.
Если вам не нужны файлы Mac, потому что вы компилируете iOS, вы можете удалить папку Mac либо перед копированием файлов в ваш проект, либо просто удалить группу из Xcode.
После того, как вы добавили исходную папку в свой проект, просто используйте следующие классы, чтобы начать использовать классы / методы GPUImage:
#import "Source/GPUImage.h"
Несколько вещей, на которые нужно обратить внимание:
Надеемся, что это помогает - кажется, что никаких четких инструкций не было, несмотря на вопрос, заданный несколько раз, но не бойтесь, GPUImage определенно работает для arm64 архитектура!
Вам нужно просто удалить arm64 из Valid Architecture и установить NO только для активной архитектуры. Теперь просто очистите, создайте и запустите. Вы не увидите эту ошибку еще раз.
:) KP
Проблема в том, что cocoapods не были построены для архитектуры arm64, но при этом они не могут быть связаны при их создании. Вероятно, вы не сможете использовать эти пакеты до тех пор, пока они не будут обновлены и не будут использовать эту архитектуру. Вы можете исправить ошибку компоновщика, перейдя в проект -> target (название вашего проекта) -> установить настройки и изменить архитектуры на стандартные архитектуры (armv7, armv7s) и допустимые архитектуры в armv7, armv7s.
Обратите внимание, что это означает, что вы не получите полную мощность 64-битного процессора. Вы сказали, что строите на 5 секунд, так что может быть по какой-то причине вам это нужно. Если вам почему-то нужна эта мощь (возможно, вы строите игру) и отчаянно нуждаетесь в этих файлах, вы можете отправить запрос на вытягивание, а затем перекомпилировать проект в arm64, установив те же самые поля в arm64 в файлы, которые вы вытащили из проекты с открытым исходным кодом. Но, если вам действительно не нужны эти файлы для совместимости с 64-битной версией, на данный момент это кажется немного перегруженным.
EDIT: некоторые люди также сообщили, что настройка Build For Active Architects на YES также необходима для решения эта проблема.
Начиная с 2014-04-28 настройка должна выглядеть примерно так:
[/g0]
file
в терминале, чтобы указать, какие архитектуры поддерживает статическая библиотека.
– funroll
21 November 2013 в 01:37
в некотором случае, если вы определяете еще один интерфейс в файле .h, но не реализовали весь этот интерфейс, эта ошибка произошла.
Линкером не удалось найти реализацию в файле .m , поэтому вам нужно реализовать его в вашем файле .m для каждого интерфейса.
Чтобы устранить эту ошибку:
1. в .m файле, поставьте реализацию для каждого интерфейса. 2.rebuild
некоторое объяснение, почему build_active_architecture имеет значение NO. Теперь Xcode обнаруживает, какие устройства вы подключили, и соответственно настроит активную архитектуру. Поэтому, если вы подключите iPod Touch второго поколения к компьютеру, Xcode должен установить активную архитектуру в armv6. Построение вашей цели с помощью вышеуказанной конфигурации отладки теперь будет только строить двоичный файл armv6, чтобы сэкономить время (если у вас нет большого проекта, вы можете не заметить разницу, но я думаю, что секунды складываются со временем).
Когда вы создаете конфигурацию распространения для публикации в App Store, вы должны убедиться, что этот параметр не установлен, чтобы вы строили жирный универсальный двоичный файл http://useyourloaf.com/blog/2010/04/21/xcode-build -активное-архитектуры only.html
«Цель OPN [Отладка] отменяет настройку сборки OTHER_LDFLAGS». Это был главный вопрос. После добавления $ (унаследованного) в новой строке в других флагах компоновщика решена моя проблема.
Я решил эту проблему, установив, что:
ARCHS = armv7 armv7s
VALID_ARCHS = armv6 armv7 armv7s arm64
Если настройки архитектуры и компоновщика выглядят хорошо, проверьте свои h-файлы. Моя проблема была той же ошибкой, но я перестроил h-файлы, и я удалил оператор extern. Другие файлы m использовали эту переменную, вызывая ошибку компоновщика.
Я столкнулся с тем же / подобным вопросом, что и реализация AVPictureInPictureController
, и проблема заключалась в том, что я не связывал структуру AVKit в своем проекте.
Сообщение об ошибке было:
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_AVPictureInPictureController", referenced from:
objc-class-ref in yourTarget.a(yourObject.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Решение:
Надеюсь, это поможет кому-то, кто сталкивается с аналогичной проблемой, которую я имел.
Я исправил мой, проверив выбранные файлы реализации в целевом членстве с правой стороны. Это особенно полезно при использовании расширений, то есть пользовательских клавиатур.
Это сработало для меня:
ios sdk 9.3
в настройке сборки для допустимой архитектуры app.xcodeproj: armv7 armv7s Build Active architecture: No
Очистите и постройте, сработали для меня.
У меня возникла такая же проблема после установки рамки AWS для решения этой проблемы. У меня есть обновленный файл конфигурации POD из вашего проекта, который создается после установки AWS POD. Проверьте конфигурационный файл, как показано ниже
OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-AWSAutoScaling" -l"
Pods- AWSCloudWatch" -l"Pods-AWSCognito" -l"Pods-AWSCore" -l
"Pods-AWSDynamoDB" -l"Pods-AWSEC2" -l"Pods-AWSElasticLoadBalancing"
-l"Pods-AWSKinesis" -l"Pods-AWSLambda" -l"Pods-AWSMachineLearning"
-l"Pods-AWSS3" -l"Pods-AWSSES" -l"Pods-AWSSNS" -l"
Pods-AWSSQS"-l "Pods-AWSSimpleDB" -l"Pods-Bolts" -l"Pods-FMDB"
-l"Pods-GZIP" -l"Pods-Mantle" -l"Pods-Reachability" -l"Pods-TMCache"
-l"Pods-UICKeyChainStore" -l"Pods-XMLDictionary" -l"sqlite3" -l
"z"-framework "Accelerate" -framework "AssetsLibrary"
-framework "CoreLocation" -framework "Foundation" -framework
"ImageIO" -framework "Security" -framework "SystemConfiguration"
-framework "UIKit" -weak_framework "UIKit"
OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
, если ваш файл конфигурации не работает должным образом, а затем установите для вашего другого флага Linker значение $ (унаследованный)
Решено после удаления содержимого DerivedData -> Build -> Products -> Debug-iphoneos
Настройка -ObjC
- Other Linker Flags
в настройках сборки цели решила проблему.
Это может быть связано с libz.dylib
или libz.tbd
, просто нужно добавить его к вашим целям для связывания двоичных файлов и попытаться скомпилировать снова.
Учитывая iPhone 5s и еще не получив 64-битную версию сторонней библиотеки, мне пришлось вернуться к 32-битовому режиму с последним Xcode (до 5.1 он не жаловался).
Я исправил это, удалив arm64 из списка Valid Architectures, а затем установив Build Active Architecture только в NO. Мне кажется, что это имеет больше смысла, чем наоборот, как показано выше. Я отправляю сообщения в том случае, если другие люди не смогут получить какое-либо из вышеперечисленных решений для работы.
Эта проблема возникла для меня после установки модуля под Podfile и pod install
. Попробовав кучу разных исправлений, я, наконец, просто импортировал Pod вручную (перетащив необходимые файлы в мой проект), и это решило проблему.
Я также столкнулся с той же проблемой, описанные выше методы не будут работать. Я случайно удалил файлы в следующем каталоге на нем.
Установка папки:
~ / Библиотека / Разработчик / Xcode / DerivedData /
$(inherited)
уже существует по умолчанию! – user924 3 March 2018 в 09:06