Как исправить сообщение об ошибке «Неопределенные символы для архитектуры x86_64:» в C? - PullRequest
0 голосов
/ 13 декабря 2018

В настоящее время я получаю сообщение об ошибке:

Неопределенные символы для архитектуры x86_64: "_makeContext", на который ссылается: _main в myThread-68b6d3.o ld: символ (ы) не найден для архитектуры x86_64

Эта ошибка возникает, только когда я использую функцию makeContext или swapContext из ucontext.h

Вот как выглядит заголовок моего кода:

#define _XOPEN_SOURCE 600

#include <unistd.h>
#include <ucontext.h>
//#include <sys/ucontext.h>
#include <signal.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <sys/time.h>

Я в терминалеи я использую это для компиляции:

gcc -w myThread.c -o myThread

Мой код скомпилируется, если я закомментирую все функции makeContext и swapContext.Он отлично работает для других функций, таких как getContext и setContext.

Есть идеи, как удалить эту ошибку?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...