Проблема такова.
Пытаюсь собрать toolchain для arm-а. А этo как,известно, binutils и gcc для arm-а. Binutils собрались без сучка и задоринки, а вот gcc на определённом этапе падает и говорит, что нет хедер-фаилов.Оно и понятно.Откуда на машине i686 хедер-фаилы для arm-а.Так вопрос.Где мне их взять?Как я понимаю, нужны не только Н-файлы но и С-файлы для этих хедер-фаилов.
Где их брать? Может перед сборкой gcc нужно собрать для нужной архитектуры(аrm-а) glibc?
У меня такой вопрос.
У меня бегут несколько процессов.Один из них-это TCP сервер.Когда он получает запрос, то нужно, что бы он передал запрос как можно быстрее и после того, как получил ответ, передал назад(тому, кто послал запрос) тоже как можно быстрее.
Достаточно ли,используя семафоры, выделить код после получения запроса как критический(т.е. что бы выполнялся превым и не было прыжков на другие процессы) и закрыть его(критеческий код) после отсылки ответа или для этих нужд требуется ещё что-то?
Спасибо.
У меня такой вопрос. Т.к. я единственнуй в офисе,кто немного рулит в Линухе, спросить неукого.
У нас вся сетка в офисе под винду.Соответственно,все принтеры в сетке тоже.Есть один единственный комп с Линухом-мой. Вопрос таков:я снял драйвера для принтера,но как мне их установить, если комп не видит принтера.Подкажите плз.
Хотел бы предложить ввести на форуме индикацию решения проблемы.
Т.е. если автор топика нашёл решение проблеммы,чаще всего он делится решением.Поэтому предлагаю ввести какой-нибудь знак(птичку или крестик в чекбоксе),что проблемма решена.
У меня такой вопрос.Нужно написать 2 сервера, которые бегут паралельно.Через TCP и UDP.Для чего - так хочет заказчик.
То,что я делаю,форком делю на 2 процесса и в каждом процессе пускаю по серверу.
Но проблема в том,что когда ссервер доходит до команд recv в TCP и recvfrom в UDP соответственно, то прога замирает на этом месте.
Более того,всё зависит от того,какой процесс побежит первым.Первый процесс доходит до recv либо до recvfrom и там он замирает.
Кто-нить знает, как справится с такой байдой?
У меня ещё и тако вопрос.
Написал библиотеку для архитектуры Coldfire(m68k).Состоит из 7 файлов. В одном из них есть функция "ExternalServer_RunMain".Это основная функция в данной библотеке.Она и делает основную работу.Внутри неё используются остальные фунцкии этой библиотеки.То,что я делаю-компилирую с опцией -с все файлы.А потом,когда образовались файлы: *.о, я их с помощью "ar" засовываю в архив библиотек.(я не делаю линковку.Для линковки нужна внешняя библиотека).Потом я запускаю основную функцию.И то,что должно происходить-не происходит.Я даже для внёс различные разпечатки из основной функции и нечего не разпечатывается.Кто-нить знает почему,в чём может быть проблема?
Может всё-таки нужно было линковать?
У меня такой вопрос.В моём приложении, порядок действий такой.
{
...
1.Инициализация библиотек.
2.Конфигурация IP адреса через DHCP
2.1. fork();
2.1.1.Если процесс == парент,тогда продолжить обычную работу с этапа 3.
2.1.2. В другом случае, execve(udhcpc) // udhcpc клиент.Простой бинарник,запускаемый как програма в Линухе
3.Подключение сервера через IP адрес, полученый через DHCP
Программа должна начать этап 3, только после того, как IP адрес получен, но проблемма в том, что получение IP адреса через DHCP процесс достаточно долгий.Поэтому мне нужно ждать,
пока DHCP не закончит работу.
Можно ли внести какую-нибудь индикацию о том что процесс получения DHCP адреса закончен?
P.S.
В принципе у меня есть сорсы, но на данном этапе не хотелось бы их трогать, т.к. библиотека уже откомпилирована и любое изменение внесёт в её конечный размер, а т.к. я пишу для Embedded, то размер здсеь достаточно важный ресурс.Поэтому, если есть возможность без изменения библиотеки,то этот вариант предпочтительнее.
У меня такой вопрос.Пишу для Linux Embedded.Приложение работает с DHCP сервером.Но после того, как DHCP выдаёт IP адрес,мне его нужно определить.
Пытаюсь определить вот такой схемой:
struct socaddr_in saddr;
struct hostent *hp;
char hostname[256];
...
gethostname(hostname);
hp = gethostbyname(hostname);
...
Но максимум,что получаю это:127.0.0.1
Не подскажите,как мне определить таки правильный адрес,а не адрес localhost или что я не правильно здесь делаю?