Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 245475 - julius speech recognition ebuild, optional dependency of simon
Summary: julius speech recognition ebuild, optional dependency of simon
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Default Assignee for New Packages
URL: http://julius.sourceforge.jp/en_index...
Whiteboard: [sunrise-overlay]
Keywords: EBUILD, InOverlay
Depends on:
Blocks: 244945
  Show dependency tree
 
Reported: 2008-11-04 04:14 UTC by Daniel Pinto dos Santos
Modified: 2013-03-31 22:45 UTC (History)
9 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
first ebuild (julius-4.0.2.ebuild,590 bytes, text/plain)
2008-11-04 04:17 UTC, Daniel Pinto dos Santos
Details
patch for the paths in the makefiles (julius-4.0.2-makefile.patch,12.16 KB, patch)
2008-11-04 04:20 UTC, Daniel Pinto dos Santos
Details | Diff
the licence for julius (julius,5.25 KB, text/plain)
2008-11-04 04:27 UTC, Daniel Pinto dos Santos
Details
updated patch to install man-pages properly as well (julius-4.0.2-makefile.patch,12.40 KB, patch)
2008-11-04 21:31 UTC, Daniel Pinto dos Santos
Details | Diff
latest ebuild for julius (julius-4.1.ebuild,857 bytes, text/plain)
2008-11-14 23:37 UTC, Daniel Pinto dos Santos
Details
This patch renames /usr/bin/jcontrol to /usr/bin/juliuscontrol in src_install to avoid collision with java-config (julius-4.1.ebuild.avoid-collision-with-java-config.patch,327 bytes, patch)
2009-12-21 12:53 UTC, John Doe
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Pinto dos Santos 2008-11-04 04:14:58 UTC
Julius is a high-performance, two-pass large vocabulary continuous speech recognition. It is a needed dependency of simon speech2text.

I filed an ebuild request for simon (Bug #244945) a couple of days ago, and as I was told there is a lack of manpower on the accessibility team, and so even if I'm not an IT-professional, and have no experience writing ebuilds, I decided to simply learn it and help the community.

So here is my first ever ebuild, had quite some help from the forums, thanks!

Reproducible: Always
Comment 1 Daniel Pinto dos Santos 2008-11-04 04:17:49 UTC
Created attachment 170681 [details]
first ebuild

I had it under app-accessibility/julius not sure if that is the right category.
Comment 2 Daniel Pinto dos Santos 2008-11-04 04:20:49 UTC
Created attachment 170683 [details, diff]
patch for the paths in the makefiles

This is needed, in order not to cause sandbox violations.
Nevertheless the man-pages are not correctly installed.

As shown in the following (snipped of output from emerge):
----------------------------------------------------
/usr/bin/install -c -d /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/lib 
 /usr/bin/install -c -m 644 libjulius.a /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/lib 
 /usr/bin/install -c -d /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/include/julius 
 /usr/bin/install -c -m 644 include/julius/*.h /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/include/julius 
 /usr/bin/install -c -d /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/bin 
 /usr/bin/install -c libjulius-config /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/bin 
 make[1]: Leaving directory `/var/tmp/portage/app-accessibility/julius-4.0.2/work/julius-4.0.2/libjulius' 
 make[1]: Entering directory `/var/tmp/portage/app-accessibility/julius-4.0.2/work/julius-4.0.2/julius' 
 /usr/bin/install -c -d /usr/bin 
 /usr/bin/install -c -d /usr/share/man/man1 
 /usr/bin/install -c julius /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/bin/julius 
 /usr/bin/install -c -m 644 julius.man /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/share/man/man1/julius.1 
 /usr/bin/install: reguläre Datei „/var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/share/man/man1/julius.1“ kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden 
 make[1]: *** [install.man] Fehler 1 
 make[1]: *** Warte auf noch nicht beendete Prozesse... 
 make[1]: Leaving directory `/var/tmp/portage/app-accessibility/julius-4.0.2/work/julius-4.0.2/julius' 
 make[1]: Entering directory `/var/tmp/portage/app-accessibility/julius-4.0.2/work/julius-4.0.2/mkbingram' 
 /usr/bin/install -c -d /usr/bin 
 /usr/bin/install -c mkbingram /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/bin 
 /usr/bin/install -c -d /usr/share/man/man1 
 /usr/bin/install -c -m 644 mkbingram.man /var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/share/man/man1/mkbingram.1 
 /usr/bin/install: reguläre Datei „/var/tmp/portage/app-accessibility/julius-4.0.2/image///usr/share/man/man1/mkbingram.1“ kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden 
 make[1]: *** [install.man] Fehler 1 
----------------------------------------------------

Otherwise seems to work well, but I have no idea how to fix that.
Posted in the forums as well, hope I can fix that soon.
Comment 3 Daniel Pinto dos Santos 2008-11-04 04:27:14 UTC
Created attachment 170685 [details]
the licence for julius

Not sure if this has to be submitted as well, but as it uses an individual licence (as far as I can tell) and the licence has to be specified in the ebuild, I just decided to submit it as well.
Comment 4 Daniel Pinto dos Santos 2008-11-04 21:31:47 UTC
Created attachment 170747 [details, diff]
updated patch to install man-pages properly as well

This patch makes the ebuild work perfectly for me.
Can't find any problems left at this stage.
Should I ask the sunrise overlay if they want to add the ebuild, or what is the proper way to proceed at this stage?
Comment 5 Peter Grasch 2008-11-09 09:01:30 UTC
http://pastebin.com/f27caa3f6

This is awesome...

I am the developer of simon and just want you to know that I really appreciate all your efforts!

However, the Julius team already released the version 4.1 - they just didn't update the English site.

So if you want the latest-and-greatest version of Julius you should check out the main site: http://julius.sourceforge.jp/.
In the right panel of the Japanese site you will still get the same Quick-Download menu as on the English site but now the links point to the 4.1 release.

The installation procedure didn't really change but I think libsoundfile may be a new (?) dependency.

Additionally I would ask you to incorporate the following two patches. I tried to get them included upstream but received no reply up until now.

The first one fixes a critical crash in mkfa:
http://pastebin.com/m61f97964
And the second one changes a few parameters named "new" to the more c++-friendly "newParam" (simon 0.2 is going to use libjulius directly and is written in C++ where "new" is a reserved keyword):
http://pastebin.com/f27caa3f6
Comment 6 Daniel Pinto dos Santos 2008-11-14 23:33:56 UTC
The ebuild is now in sunrise-overlay:
http://overlays.gentoo.org/svn/proj/sunrise/sunrise/app-accessibility/julius/

Thanks for all the help!

Comment 7 Daniel Pinto dos Santos 2008-11-14 23:37:02 UTC
Created attachment 171760 [details]
latest ebuild for julius

Please check out the sunrise overlay for the patches!
Comment 8 Erik Hahn 2008-12-30 16:35:16 UTC
Ebuild in Sunrise has been updated (not reviewed yet):
http://overlays.gentoo.org/svn/proj/sunrise/sunrise/app-accessibility/julius/julius-4.1.ebuild
Comment 9 aperion 2009-03-08 18:25:19 UTC
You can add the ~amd64 arch, works like a charm.
Comment 10 Oliver Putz 2009-09-01 18:30:35 UTC
Not sure if this is the right place to mention this, but the ebuild in the sunrise overlay conflicts with dev-java/java-config. Both programs try to install a file called jcontrol into /usr/bin/jcontrol which leads to a file collision if both are to installed at the same time.
Besides the name and place, both files however have nothing in common...
Comment 11 John Doe 2009-12-21 12:53:26 UTC
Created attachment 213671 [details, diff]
This patch renames /usr/bin/jcontrol to /usr/bin/juliuscontrol in src_install to avoid collision with java-config

No idea if this breaks something.
Comment 12 Igor Poboiko 2010-06-29 21:36:33 UTC
Looks like julius for simon comes in simon tarball (as for 0.3-alpha-2 version) and compiles with it. So looks like this bug doesn't block simon request now.
Comment 13 Julian Ospald 2013-03-31 22:45:53 UTC
+*julius-4.2.2 (31 Mar 2013)
+
+  31 Mar 2013; Julian Ospald <hasufell@gentoo.org> +julius-4.2.2.ebuild,
+  +files/julius-4.2.2-install.patch, +files/julius-4.2.2-ldflags.patch:
+  initial import wrt #245475