Bug 27427 - Сборка po2xml и swappo
Summary: Сборка po2xml и swappo
Status: REOPENED
Alias: None
Product: Sisyphus
Classification: Development
Component: kde4sdk (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Sergey V Turchin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-09 15:15 MSK by Andrey Cherepanov
Modified: 2014-03-11 17:45 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Cherepanov 2012-06-09 15:15:41 MSK
Добавь в спек

BuildRequires: antlr-native-devel

для сборки программ po2xml и swappo (пакет kde4sdk-po2xml)
Comment 1 Sergey V Turchin 2012-06-09 16:02:46 MSK
Я уже забыл, из-за какой бадяги не стал с ним собирать. Сначала на p6 попробую.
Comment 2 Andrey Cherepanov 2012-06-09 19:04:15 MSK
Я сегодня поставил в p6 antlr-native-devel и собрал из SVN последнюю версию po2xml. Без проблем собралась.
Comment 3 Zerg 2012-06-09 19:53:40 MSK
(В ответ на комментарий №0)
> antlr-native-devel
Нет такой буквы в сизифе
Comment 4 Andrey Cherepanov 2012-06-11 00:46:09 MSK
Игорь, объясни пожалуйста, отчего сдох котёнок (antlr-native-devel) в Сизифе? И можно ли его воскресить?
Comment 5 viy 2012-06-11 01:30:47 MSK
если им нужно /usr/bin/antlr, 
то должно хватить пакета antlr - это /usr/bin/antlr на чистой java.

Попробуйте вместо antlr-native-devel antlr,
если не поможет - будем смотреть дальше.
Comment 6 Andrey Cherepanov 2012-06-11 09:22:06 MSK
(В ответ на комментарий №5)
> Попробуйте вместо antlr-native-devel antlr,
> если не поможет - будем смотреть дальше.
Нет, ему библиотека и инклюдники нужны.
Comment 7 viy 2012-06-11 15:53:03 MSK
понял, буду гальванизировать.
Comment 8 viy 2012-06-11 23:44:38 MSK
#73356 DONE sisyphus srpm=antlr-2.7.7-alt7_13jpp7.src.rpm
Comment 9 viy 2012-06-11 23:46:18 MSK
реанимировал.

Андрею: 
с вас #27434 (autoimports.altlinux.org packages support) :)
Comment 10 Sergey V Turchin 2012-06-13 15:31:13 MSK
Там что-то намутить с жабой еще нужно

Exception in thread "main" java.lang.NoClassDefFoundError: antlr.Tool
   at gnu.java.lang.MainThread.run(libgcj.so.12)
Caused by: java.lang.ClassNotFoundException: antlr.Tool not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/bin/build-classpath,file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
   at java.net.URLClassLoader.findClass(libgcj.so.12)
   at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.12)
   at java.lang.ClassLoader.loadClass(libgcj.so.12)
   at java.lang.ClassLoader.loadClass(libgcj.so.12)
   at gnu.java.lang.MainThread.run(libgcj.so.12)
make[2]: *** [poxml/GettextLexer.cpp] Error 1
Comment 11 Sergey V Turchin 2012-06-13 16:20:55 MSK
Перед этим там еще 

java virtual machine used: /usr/lib/jvm/java/bin/java
classpath used: /usr/bin/build-classpath: error: JVM_LIBDIR /usr/lib/jvm-exports/java does not exist or is not a directory:
main class used: antlr.Tool
flags used: 
options used: 
arguments used: -o /home/zerg/RPM/BUILD/kdesdk-4.8.4/BUILD-i586-alt-linux/poxml gettext.g

Возможно, JVM_LIBDIR нужно выставить, но я не знаю, какой :-(
Comment 12 viy 2012-06-13 18:44:51 MSK
(В ответ на комментарий №10)
> Там что-то намутить с жабой еще нужно
> Exception in thread "main" java.lang.NoClassDefFoundError: antlr.Tool
> parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
>    at java.net.URLClassLoader.findClass(libgcj.so.12)
...
О, вот и причина. antlr-native-* здесь не при чем, здесь причина в отсутствии нативно прекомпилированого jar для gcj.

Вообще говоря, нативно прекомпилированые jar's для gcj у нас не поддерживаются. С ними есть ряд граблей, связанных с тем, что в gcj
java stdlib не хватает реализаций ряда стандартных классов.

Поэтому (в общем случае) у нас нативно прекомпилированых jar для gcj нет
и в близжайшем времени не будет.

Однако antlr - пакет самодостаточный, без зависиостей, написанный 
на портабельность под gcj в том числе. и для него это возможно.

В общем, в виде исключения, встречайте пакет antlr-2.7.7-alt9_13jpp6
с подпакетом gcj-antlr, содержащим искомый нативно прекомпилированый jar.
Comment 13 viy 2012-06-13 18:45:30 MSK
а antlr-native-devel из зависимостей можно выбросить.
Comment 14 Sergey V Turchin 2012-06-13 19:18:37 MSK
(В ответ на комментарий №13)
> а antlr-native-devel из зависимостей можно выбросить.
Не, он нужен. Там его devel-файлы ищутся.
Comment 15 Sergey V Turchin 2012-06-14 16:29:51 MSK
(В ответ на комментарий №12)
> gcj-antlr, содержащим искомый нативно прекомпилированый jar.
Ничего не изменилось.
Comment 16 Sergey V Turchin 2012-06-14 16:59:27 MSK
(В ответ на комментарий №11)
> classpath used: /usr/bin/build-classpath: error: JVM_LIBDIR
Сделал ссылку
ln -s jre /usr/lib/jvm-exports/java
и собралось. Почему ее никто не делает?
Comment 17 viy 2012-06-19 23:59:10 MSK
(В ответ на комментарий №16)
> (В ответ на комментарий №11)
> > classpath used: /usr/bin/build-classpath: error: JVM_LIBDIR
> Сделал ссылку
> ln -s jre /usr/lib/jvm-exports/java
> и собралось. Почему ее никто не делает?

Сергей, не могли бы вы уточнить,
в сборочном окружении что показывает
rpm -qa | java-
?
Comment 18 viy 2012-06-20 00:01:45 MSK
Извиняюсь, вовремя не ответил, потом забыл и только сейчас опять наткнулся.
Comment 19 Sergey V Turchin 2012-06-20 14:54:15 MSK
[zerg@vzerg ~]$ rpm -qa | grep java- | sort 

fonts-ttf-java-1.6.0-sun-1.6.0.26-alt4
gcc4.6-java-4.6.3-alt3
gcc-java-common-1.4.14-alt1
java-1.5.0-gcj-0.5.9-alt2
java-1.5.0-gcj-aot-compile-1.5.0.0-alt2_28jpp5.1.1
java-1.5.0-sun-1.5.0.22-alt3
java-1.6.0-sun-1.6.0.26-alt4
java-common-1.5.0-alt1
java-cup-0.11-alt2_0.a.2jpp5
java-stub-javadoc-0.1-alt1
java-sun-desktop-1.6.0.26-alt4
rpm-build-java-5.0.0-alt15
tzdata-java-2012c-alt1
Comment 20 viy 2012-06-20 23:41:02 MSK
спасибо, проблема понятна.
В общем, надо допилить java-gcj.
Буду допиливать.
Comment 21 Sergey V Turchin 2012-10-16 15:20:47 MSK
У меня kde4sdk даже собралось 1 раз чудесным образом, но не пойму, что в BuildRequires писать.

Если подскажете(успешная сборка в hasher), буду признателен.
Comment 22 viy 2012-10-17 21:51:40 MSK
(В ответ на комментарий №21)
> У меня kde4sdk даже собралось 1 раз чудесным образом, но не пойму, что в
> BuildRequires писать.
> 
> Если подскажете(успешная сборка в hasher), буду признателен.

Мои извинения. Прилагаю патч, с которым у меня собралось.

Вот патч:
--- a/altlinux/kde4sdk.spec
+++ b/altlinux/kde4sdk.spec
@@ -2,7 +2,7 @@
 %add_findpackage_path %_K4bindir
 %add_findreq_skiplist %_K4apps/lokalize/scripts/*.py
 %add_findreq_skiplist %_K4bindir/kdedoc
-%def_disable antlr
+%def_enable antlr
 
 %define rname kdesdk
 Name: kde4sdk
@@ -43,7 +43,7 @@ BuildRequires(pre): kde4libs-devel
 BuildRequires: libsubversion-devel perl-XML-DOM perl-Switch libldap-devel liblt
 BuildRequires: libiberty-devel libjpeg-devel libxslt-devel bzlib-devel
 %if_enabled antlr
-BuildRequires: antlr gcj-antlr antlr-native-devel
+BuildRequires: antlr gcj-antlr antlr-native antlr-native-devel /proc
 %endif
 BuildRequires: boost-devel libhunspell-devel desktop-file-utils perl-Pod-Parser
 BuildRequires: kde4libs-devel >= %version kde4base-devel
Comment 23 Repository Robot 2012-10-18 16:22:38 MSK
kde4sdk-4.9.1-alt2 -> sisyphus:

* Thu Oct 18 2012 Sergey V Turchin <zerg@altlinux> 4.9.1-alt2
- build with antlr (ALT#27427); thanks viy@alt
Comment 24 Sergey V Turchin 2014-03-11 17:45:39 MSK
У antlr что-то сломалось. С новым gcc, видимо, связано. Пока соберу без po2xml.