Jump to content

    

jacuba

Участник
  • Content Count

    26
  • Joined

  • Last visited

Community Reputation

0 Обычный

About jacuba

  • Rank
    Участник
  • Birthday 03/17/1991

Информация

  • Город
    Array
  1. Добрый день, и так, "Кросскомпиляция", я хочу окончательно разобраться с этим вопросом. Предположим, что у меня есть некая машина с ARM-архитектурой и есть основная машина с i386 архитектурой. Мне хочется собрать некоторую программу на машине с i386 для машины с ARM. для этого я собираю и устанавливаю arm-компилятор. затем я беру исходник программы hello.c: #include <stdio.h> int main(){ printf("Hello world!"); return 0; } и в командной строке пишу: ~ # arm-linux-gcc hello.c -o hello На выходе я получаю файл hello, его я кидаю на машину с ARM, запускаю и вижу надпись "Hello world!". Из этого делаю вывод, что кросскомпилятор у меня работает нормально. Теперь, я хочу скомпилировать уже не просто программу, где на выходе будет один бинарник, а хочу скомпилировать программу побольше, где есть еще разные сторонние файлы. Для этого захожу в папку: ~ # ls -1 build_tools ChangeLog dahdi-linux-2.4.1.2-summary.html dahdi-linux-2.4.1.2-summary.txt doc drivers include LICENSE LICENSE.LGPL Makefile README UPGRADE.txt Как мне скомпилировать эту программу, ведь здесь нет фала "<name>.c". Прошу разъяснить, уважаемые. Спасибо и с уважением. Дмитрий.
  2. NGW100 init.d

    Все сделал по инструкции http://electronix.ru/forum/index.php?showtopic=89802
  3. NGW100 init.d

    Добрый день, имеется плата NGW100, стоит задача сделать мост между интерфейсами eth0 и eth1 Делаю это командами: # ifconfig br0 down # ifconfig eth0 down # ifconfig eth1 down # brctrl addif br0 eth0 # brctrl addif br0 eth1 # ifconfig br0 up # ifconfig eth0 up # ifconfig eth1 up Мост поднимается и функционирует как надо, но стоит мне перезагрузить плату, как мост разрушается. Поэтому появилась идея сделать скрипт автозагрузки с этими командами. Начинаю делать по этой инструкции: http://meandubuntu.ru/2009/08/%D1%81%D0%BA...-%D0%B2-ubuntu/ Дохожу до момента, когда необходимо сделать update-rc.d scriptname defaults 95 И не нахожу в своем дистрибутиве подобной утилиты, поэтому хочу спросить, можно ли еще каким-нибудь образом добавить скрипт а автозагрузку?
  4. NGW100

    спасибо всем, нашел инструкцию в недрах atmel.no http://support.atmel.no/knowledgebase/avr3...ile_system.html
  5. NGW100 tftp

    Проблема решилась перепрошивкой юбута, взятого с atmel.no
  6. NGW100

    Добрый день, имеется плата NGW100. Прошил на нее uboot и сейчас хочу прошить на флешку саму фс. Ранее грузился с нфс, но этого стало недостаточно. Делаю следующим образом: 1 .Монтирую в директорию /nfs/ltm_client/ образ rootfs.client.ext2 #это образ с которого я грузился по нфс 2. #mkfs.jffs2 -b /nfs/ltm_client -o /home/user/image/jffs2_root.img и копирую получившийся образ в /tftpboot/ 3. Заливаю по tftp этот образ на плату: Uboot> protect off 0x20000 0x7EFFFF Uboot> erase 0x20000 0x7EFFFF Uboot> dhcp 0x90000000 jffs2_root.img Bytes transferred = 1538349 (17792d hex) U-Boot> cp.b 0x90000000 0x20000 0x17792d U-Boot> protect on all После этого перезагружаю плату, uboot грузится, делаю следующее: U-Boot> ls Scanning JFFS2 FS: done. U-Boot> И дальше сдвинуться не могу. Если грузить оригинальный образ, то на плате появляются все необходимые папки и я могу загрузить ядро. Может я не правильно создаю образ? Прошу, вас, уважаемые, помогите.
  7. NGW100 tftp

    Раньше до меня с этой платой кто-то уже работал. Когда я начал работать с ней сам, я монтировал файловую систему с образа каждый раз, когда включал плату. Потом этого уже стало недостаточно и я решил образ поместить во флеш память. Я проделал следующее: Uboot> set ipaddr 10.10.10.214 Uboot> set tftpip 10.10.10.201 Uboot> saveenv Saving Environment to Flash ... Un-Protected 1 sectors Erasing Flash ... . done Erased 1 sectors Writing to Flash ... done Protected 1 sectors Uboot> protect off 0x20000 0x7EFFFF Uboot> erase 0x20000 07E .......................................... Uboot> tftp 0x90000000 rootfs.client.ext2 macb0: No PHY present macb1: No PHY present
  8. NGW100 tftp

    Добрый день, имеется плата аналог NGW100 Работала отлично, потом поэксперемнтировав с uboot перестала загружать образ с tftp: U-Boot > print bootdelay=1 baudrate=115200 hostname="ltm03" eth0addr=00:04:25:1C:67:0A eth1addr=00:04:25:1C:67:0B ipaddr=10.10.10.214 bootcmd=fsload boot/uImage;bootm tftpip=10.10.10.201 serverip=10.10.10.201 ethact=macb0 bootargs="" stdin=serial stdout=serial stderr=serial filesize=0 filename=rootfs.client.ext2 10.10.10.201 - это адрес моей машины, на ней поднят tftp-сервер. Пытаюсь загрузить образ: tftpboot 0x90000000 rootfs.client.ext2 macb0: No PHY present macb1: No PHY present tftp 0x90000000 rootfs.client.ext2 macb0: No PHY present macb1: No PHY present dhcp 0x90000000 rootfs.client.ext2 macb0: No PHY present macb1: No PHY present И даже если я просто пишу команду без параметров: tftpboot macb0: No PHY present macb1: No PHY present Подскажите куда копать?
  9. кхм, может я плохо искал, но ничего на openembedded.org (kurtis, вы ведь об этом говорили?), посему решил вернуться к ручной самостоятельной сборке. CXXLD libmediastreamer.la /usr/local/arm/3.3.2/lib/gcc-lib/arm-linux/3.3.2/../../../../arm-linux/bin/ld: cannot find -lspeexdsp collect2: ld returned 1 exit status make[5]: *** [libmediastreamer.la] Ошибка 1 make[5]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src' make[4]: *** [all] Ошибка 2 make[4]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src' make[3]: *** [all-recursive] Ошибка 1 make[3]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2' make[2]: *** [all] Ошибка 2 make[2]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2' make[1]: *** [all-recursive] Ошибка 1 make[1]: Leaving directory `/home/user/linphone-34/linphone-3.4.3' make: *** [all] Ошибка 2 Конфигурирую следующим образом: ./configure --prefix=/armbuild --host=arm-linux --with-gnu-ld --disable-static --disable-glib --with-osip=$ARM_INSTALL_TREE/usr --with-readline=$ARM_INSTALL_TREE/usr SPEEX_CFLAGS="-I$ARM_INSTALL_TREE/usr/include" SPEEX_LIBS="-L$ARM_INSTALL_TREE/usr/lib -lspeex" --disable-video --disable-nls --enable-gtk_ui=no --disable-glib --enable-alsa=no я уже ничего не понимаю, откуда почему и как? Прошу помощи!
  10. kurtis, спасибо за ответ. к сожалению Ваш linphone мне не подошел. спасибо за наводку, пойду поковыряю openembedded
  11. в поисках решения забрел на один китайский блог Google Chrome помог мне перевести страницу, и если я правильно понял, то там советуют закоментировать ветку else в условии, но там говорится про файл msticker.с а у меня msfilter.c, но мне то же помогло. Прошу поправить, если я понял не правильно. не нравится мне эти операции с удалением строк из кода. В общем ошибка пропала и появилась следующая, не помню точно содержание, но что-то про неопределенные SPEEX_PREPROCESS_GET_PSD_SIZE и SPEEX_PREPROCESS_GET_PSD. В этом же блоге было и решение - достаточно было добавить в файл mediastreamer2/src/msconf.c строки #define SPEEX_PREPROCESS_GET_PSD_SIZE 34 #define SPEEX_PREPROCESS_GET_PSD 35 Эти ошибки больше не возникают, появляются другие, но пока все решается. Первый раз в жизни столкнулся с кросс-компиляцией и сразу же такой геморой. Кросс-компиляция всегда так тяжело проходит или мой случай исключительный?
  12. Задам еще вопрос. Компилирую linphone, получаю ошибку: ... make all-am make[5]: Entering directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src' CC mscommon.lo CC msfilter.lo msfilter.c: In function `get_cur_time_ns': msfilter.c:257: error: `CLOCK_MONOTONIC' undeclared (first use in this function) msfilter.c:257: error: (Each undeclared identifier is reported only once msfilter.c:257: error: for each function it appears in.) make[5]: *** [msfilter.lo] Ошибка 1 make[5]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src' make[4]: *** [all] Ошибка 2 make[4]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2/src' make[3]: *** [all-recursive] Ошибка 1 make[3]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2' make[2]: *** [all] Ошибка 2 make[2]: Leaving directory `/home/user/linphone-34/linphone-3.4.3/mediastreamer2' make[1]: *** [all-recursive] Ошибка 1 make[1]: Leaving directory `/home/user/linphone-34/linphone-3.4.3' make: *** [all] Ошибка 2 предполагаю, что если закоментировать и эти строки, то ошибка пропадет:) но это плохое решение. От чего возникают подобные ошибки?
  13. Я открыл файл b64.c и закоментировал строки 209-212. Данная проблема решилась. Спасибо.
  14. Я добился того, что linphone сконфигурировался и теперь приступаю к компиляции: # make ... libtool: compile: arm-linux-gcc -DHAVE_CONFIG_H -I. -I.. -I../include/ -D_REENTRANT -I.. -g -O2 -Wall -Werror -DORTP_INET6 -MT b64.lo -MD -MP -MF .deps/b64.Tpo -c b64.c -fPIC -DPIC -o .libs/b64.o b64.c: In function `b64_encode_': b64.c:209: warning: comparison is always true due to limited range of data type b64.c:210: warning: comparison is always true due to limited range of data type b64.c:211: warning: comparison is always true due to limited range of data type b64.c:212: warning: comparison is always true due to limited range of data type make[5]: *** [b64.lo] Ошибка 1 make[5]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP/src' make[4]: *** [all-recursive] Ошибка 1 make[4]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP/src' make[3]: *** [all-recursive] Ошибка 1 make[3]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP' make[2]: *** [all] Ошибка 2 make[2]: Leaving directory `/root/arm1/linphone-3.4.3/oRTP' make[1]: *** [all-recursive] Ошибка 1 make[1]: Leaving directory `/root/arm1/linphone-3.4.3' make: *** [all] Ошибка 2 В какую сторону копать?
  15. Да, armbuild лежит прямо в корне. Только что проверил все пути установки, понял, что хидеры linphone искал не там - поправил - частично помогло. Спасибо, Petka, ты единственный, кто проявляет интерес к этой теме на этом форуме:)