Добрый вечер!
Видимо сегодня не мой день, но я никак не могу понять почему если я говорю
компилятору делать статическую сборку, то он все равно делает динамическую.
Подробнее:
svn checkout http://opkg.googlecode.com/svn/trunk/ opkg-read-only
cd opkg-read-only
./autogen.sh --host=arm-unknown-linux --target=arm-unknown-linux CC=«arm-android-linux-uclibcgnueabi-gcc» \
CROSS_COMPILE=«arm-android-linux-uclibcgnueabi-» CFLAGS=" -nodefaultlibs -nostdlib -static -fPIC $_XXFLAGS" \
CXXFLAGS=" -nodefaultlibs -nostdlib -static -fPIC $_XXFLAGS" \
LDFLAGS=" -nodefaultlibs -nostdlib -static -fPIC -s -L$HOME/build/cross/sys-root/usr/lib -lm -lc -liberty -lgcc" \
AR=«arm-android-linux-uclibcgnueabi-ar» AS=«arm-android-linux-uclibcgnueabi-as» \
LD=«arm-android-linux-uclibcgnueabi-ld» RANLIB=«arm-android-linux-uclibcgnueabi-ranlib» \
OBJDUMP=«arm-android-linux-uclibcgnueabi-objdump» STRIP=«arm-android-linux-uclibcgnueabi-strip» \
NM=«arm-android-linux-uclibcgnueabi-nm» CXX=«arm-android-linux-uclibcgnueabi-g++» --disable-dependency-tracking \
--with-pic cross_compiling=yes --disable-curl --disable-gpg --prefix=$HOME/build/cross/sys-root/usr \
--enable-static --disable-shared --with-gnu-ld
Вроде все отлично - делаю make
Он ругнулся пару раз (не нашел символ _start), но отработал штатно.
Две библиотеки libbb и libopkg собрал статически, все правильно, но!
opkg-cl - бинарник собрал динамически, и никак не поддается на переговоры.
Ладно, попробовал собрать руками из opkg-cl.o - скомпиленный object файл
cd src
arm-android-linux-uclibcgnueabi-ld -nodefaultlibs -nostdlib -static -s -L$HOME/build/cross/sys-root/lib \
-L$HOME/build/cross/sys-root/usr/lib -L../libopkg/.libs -L../libbb/.libs -lm -lc -liberty -lgcc -lopkg -lbb opkg-cl.o -o opkg
При этом он ругается
warning: cannot find entry symbol _start; defaulting to 00008094
opkg-cl.o: In function `args_parse':
opkg-cl.c:(.text+0x50): undefined reference to `getopt_long_only'
opkg-cl.c:(.text+0x210): undefined reference to `xstrdup'
и так далее стандартными функциями...
Но ведь у меня не только присутсвуют нужные статические библиотеки по указанным путям, но и ведь другие программы собирались нормально.
А теперь вопрос - в чем моя ошибка, либо в самостоятельной компиляции либо в опциях configure?
Я все никак не могу понять...
Спасибо заранее!
Ответ на:
комментарий
от sda00
Ответ на:
комментарий
от XVilka
Ответ на:
комментарий
от sda00
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум [C,C++][nmap][arm] Проблемы конечной линковки с libc и прочим (2010)
- Форум Ошибки С++ при сборке uClibc++ (2010)
- Форум Ошибка при компиляции файла на C: expected declaration specifiers or '...' before '(' (2010)
- Форум не собирается eglibc (2012)
- Форум cross gcc вызывает не тот ассемблер! (2010)
- Форум Сборка libx264 c Android NDK (2016)
- Форум Ошибка кросс компиляции Python-2.7.1 (2011)
- Форум Загрузка исполняемого кода, статически слинкованного с glibc в mmap-нутую rwx память (2015)
- Форум Ошибка создания модуля ksplice-create (2010)
- Форум Правильная сборка rustc (2015)