safemode |
|
Темы:
1
Сообщения:
14
Участник с: 09 января 2018
|
Здраствуйте , помогите собрать fdutils пакет ( утилита для флопи ) , пишет - fdmount.c:25: error:include file 'linux/ext2_fs.h' not found make: *** [Makefile:8: compile] Error 2 aur-mirror /fdutils/PKGBUILD : # Contributor: Laurent Hilsz <laurent.hilsz@laposte.net> pkgname=fdutils pkgver=5.5 pkgrel=3 arch=('i686' 'x86_64') pkgdesc="Utilities for the Linux floppy driver, i.e. for formatting extra capacity disks" url="http://fdutils.linux.lu/index.html" makedepends=('texinfo' 'tcc') depends=('glibc' 'tcc' 'texinfo') source=(http://fdutils.linux.lu/$pkgname-$pkgver.tar.gz) md5sums=('2b8b65f52378158a4a21e455566b456d') #install=fdutils.install options=('!strip' '!makeflags' '!buildflags') license=('GPL') #build() { package() { cd $srcdir/$pkgname-$pkgver install -d $pkgdir/etc export CC=tcc ./configure --prefix=$pkgdir/usr --sysconfdir=$pkgdir/etc \ --infodir=$pkgdir/usr/share/info || return 1 sed -i 's+-c -s -m+-c -m+g' src/Makefile || return 1 make || return 1 make install || return 1 } Build брал здесь : https://searchcode.com/codesearch/view/40121919/ Спасибо . |
vasek |
|
Темы:
47
Сообщения:
11881
Участник с: 17 февраля 2013
|
safemodeНе находит ext2_fs.h .......... но вряд ли и получится собрать - я сейчас попробовал, но без PKGBUILD - просто скачал fdutils-5.5.tar.gz - распаковал, configure прошел нормально, make на отсутствие ext2_fs.h не заругался (я закинул этот файл в /usr/include/linux/ ), но, учитывая, что пакет fdutils слишком старый, а gcc далеко ускакал вперед, то получил кучу варнингов и ошибок и в конце не собралось, сообщил на две ошибки - что то и не понял какие (особо не вдавался). Попробуй, может исправишь эти ошибки, если имеешь опыт. А если опыта нет, то лучше и не пробовать. Но можно попробовать скачать готовый deb пакет fdutils (есть в Ubuntu и Debian) и переконвертить его в наш пакет (поищи в блогах - там написано про конверторы пакетов).
Ошибки не исчезают с опытом - они просто умнеют
|
safocl |
|
Темы:
122
Сообщения:
1571
Участник с: 08 октября 2015
|
vasekчо там конвертить то, распакавал, закинул файлы по нужным папкам и запаковал... гатова |
safemode |
|
Темы:
1
Сообщения:
14
Участник с: 09 января 2018
|
vasek Спасибо , вы мне помогли советом . Буду тестить этот пакет :) Установка deb пакетов : https://www.ostechnix.com/convert-deb-packages-arch-linux-packages/ |
RusWolf |
|
Темы:
11
Сообщения:
2845
Участник с: 16 июля 2016
|
vasekПосле ./configure видно что ему не хватает старых заголовков: ext2_fs.h его вроде даже не интересует.
|
vasek |
|
Темы:
47
Сообщения:
11881
Участник с: 17 февраля 2013
|
RusWolfЯ обычно на это не смотрю, запускаю make и разбираюсь. В данном случае после запуска make получаем фатальную ошибку при сборке fdmount Смотрим строку 25 в fdmount.c и видим - #include <linux/ext2_fs.h>Проверяем и убеждаемся, что в нашем ядре, такого файла действительно нет. Скопировал из имеющихся у меня сорцов и запустил make по новой - прошло, этой фатальной ошибки нет, но появилась куча других ошибок, но эти ошибки уже обусловлены самим исходником и компилятором и fdmount не собрался. Нужно смотреть и разбираться, а это не так то просто, не зная в совершенстве C и основы данной проги. Но не исключено, что ошибки могут быть и дальше.
Ошибки не исчезают с опытом - они просто умнеют
|
RusWolf |
|
Темы:
11
Сообщения:
2845
Участник с: 16 июля 2016
|
vasekБез углублённых знаний видно, что вместо ext2_fs.h нужен ext_fs.h, с совсем другими объявленными функциями. |
vasek |
|
Темы:
47
Сообщения:
11881
Участник с: 17 февраля 2013
|
RusWolfДавай попробуем разобраться. 1. Если бы в configure была серъезная ошибка, то в конце вывода была бы строка, типа Если такая строка отсутствует, тот можно смело переходить к make и ловить ошибки там. У нас такой строки нет и считаем что все нормально.2. Если делать по феншею, используя PKGBUILD , то мы остановимся на той же ошибке и плясать мы будем от этой ошибки, чтобы устранить ее.3. Проведем более подробный анализ. Если воспользоваться поиском наличия словосочетания ext_fs в файлах пакета (например, используя утилиты rg, ag и др.), то увидим, что ext_fs встречается в файлах fdutils-5.5/configure.in С этим все понятно - обязательная проверкаfdutils-5.5/configure С этим то же все понятно - обязательная проверкаfdutils-5.5/config.h и fdutils-5.5/config.h.in А вот это уже важно - мы не используем старую, самую 1-ую файловую систему, и оставляем все по умолчанию - т.е. вопросов по ней быть не должно.fdutils-5.5/src/fdmount.c И получается, что ext_fs.h нам не нужен, а вот без ext2_fs.h не обойтись.Если я не прав, поясни, буду только рад - я к критике отношусь положительно. Это всегда на пользу.
Ошибки не исчезают с опытом - они просто умнеют
|
anode |
|
Темы:
8
Сообщения:
1020
Участник с: 30 августа 2011
|
Эта фигня еще и конфигурационный файл создает как $prefix/etc , т.е. при установке или перепишет каталог /etc или /usr/etc, если вас угораздит делать это под rootом или пошлет куда-то далеко, если под обычным пользователем. Но изменив в исходниках, а именно в файле src/fdmount.c 25 строку с #include <linux/ext2_fs.h> на #include <ext2fs/ext2_fs.h> и пременив ./configure --prefix=/tmp/fdutils я спокойно этот древний хлам скомпилировал и установил, если у вас все в порядке с преобразованием texi файлов в info и man. Если же ругается при создании документации, можно компилировать и устанавливать из каталога src. Желаю удачи в ваших археологических раскопках. ЗЫ. $prefix/etc - это регулярный файл, не каталог! |
vasek |
|
Темы:
47
Сообщения:
11881
Участник с: 17 февраля 2013
|
anode, спасибо за подсказку - я что то и не додумался подправить #include <ext2fs/ext2_fs.h> В этом случае в самом деле не нужно никаких файлов. Попробовал, как ты и описал, прошло нормально, но в конце уперлось в преобразование texi файлов. Убедился, дальше пробовать не стал.
Ошибки не исчезают с опытом - они просто умнеют
|