You should direct FX related issues to openjfx-dev instead.

-DrD-

> I am trying to build JavaFX with native media enabled.  For background, read 
> *The initial problem* below.
> 
> So I am stuck in build.gradle ( line 2392 for me)  in def buildGlib{ .... I 
> have progressed somewhat since the initial problem.  To me it now seems that 
> Gradle or Cywin or Make is messing up my Path so that the makefile is not 
> able to execute lines like:
> /MANIFEST   = $(shell cygpath -ma "$(BUILD_DIR)/$(BASE_NAME).manifest"/)
> as it can't find cygpath.
> 
> I haven't fixed this yet, but I have some clues.
> Firstly, I have added a line to the makefile (in 
> E:\...\JavaFX\modules\media\src\main\native\gstreamer\projects\win\glib-lite/)
>   a /lin/e SHELL=C:/cygwin/bin/sh.exe/to be sure I have a shell./
> /Then I added a line to print the value of /PATH /in the makefile.
> My DOS path (DOS SET PATH) has 26 items including C:\cygwin\bin; which is 
> where cygpath.exe is held.
> By the time /PATH /gets to the makefile it has 47 items and the item 
> C:\cygwin\binhas been /replaced /by C:/cygwin64/bin;
> As a result (I think) /$(shell cygpath/doesn't find cygpath and that breaks 
> the build.
> 
> I have grepped for /cygwin64 /in the JFX tree but there are no hits.
> So either Cygwin or Gradle or Cygwin-make is taking what may be a correct DOS 
> path and making it into an incorrect path by the time it gets to /make/. 
> /cygwin.bat/ does not do it. /mingw make 3.8/ has the same problem so perhaps 
> it is in /Cygwin /or Gradle.
> 
> It seems /make /has a variable called PATH which is /derived /from DOS Path 
> but is messed up.  DOS path itself is not changed.  I don't really understand 
> who makes the make PATH or how /make /might use it in finding cygpath.exe.
> 
> But these are just clues.
> 
> Any ideas on where to look /what to do next?
> 
> Thanks
> 
> robinH
> 
> P.S.
> It would be helpful if the page Building OpenJFX 
> <https://wiki.openjdk.java.net/display/OpenJFX/Building+OpenJFX> was more 
> specific about the versions of /Cygwin /& /make /which should be used as it 
> is quite specific for most of the other tools. /Cygwin/make/ has been making 
> changes in how they deal with DOS paths so perhaps they broke something.
> 
> ------------------------------------------------- The initial probem 
> -------------------------------------------------------------------------
> 
> I find JFX media HLS is not working well for me. It dies after about 30s 
> whereas VLC can pick up the 'dead' m3u8 and continue playing fine, so I 
> decided to build from source to try to see what is going on.  I have followed 
> Michael Berry's efforts extending media codecs too. Also,  I found this 
> <https://coaxion.net/blog/2014/05/http-adaptive-streaming-with-gstreamer/>(November
>  26, 2014 at 15:04 
> <https://coaxion.net/blog/2014/05/http-adaptive-streaming-with-gstreamer/comment-page-1/#comment-28467>)
>  comment interesting in response to the question "Is there any support on 
> gstreamer 0.10 for Adaptive Streaming – Smooth Streaming, Dash etc. ?" . 
> 'Slomo' replied /"There is some initial support for HLS but don’t use 0.10 
> for anything really. It’s no longer maintained since more than 2 years and a 
> lot has happened since then"/. The rest of his blog ('*HTTP Adaptive 
> Streaming with GStreamer*') seemed to indicate he had some knowledge in this 
> area.  So I decided to build from source to see more of what is going on.
> 
> I chose to build 8u-dev/rt from Hg, although that may not have been the best 
> choice.
> The initial build went fine (without native).  It was */easy/*. 
> Congratulations!
> 
> Then I made a gradle.properties and set COMPILE_MEDIA = true and got errors.  
> These are in of build.gradle ( line 2392 for me)  in def buildGlib{ ....
> This exec's the makefile in 
> E:\robins_root\software\JavaFX\modules\media\src\main\native\gstreamer\projects\win\glib-lite.
> The errors look like:
> /bin/sh: cygpath: command not found
> /    Makefile:71: recipe for target '/libglib-2.28.8.lib' failed/ /( I have 
> messed up the line numbers ignore 71)/
> And make returns 2 and error 127.  Now from the cywin window, I can do
> 
> /Robin@MY-PC /cygdrive/e/robins_root/software/JavaFX//
> //$ cygpath --help//
> //cygpath --help//
> //Usage: cygpath (-d|-m|-u|-w|-t TYPE) [-f FILE] [OPTION]... NAME.../
> etc
> and also
> /$ echo $SHELL//
> //echo $SHELL//
> //C:\cygwin\bin\bash.exe/
> and echo path starts off
> /usr/local/bin:
> /usr/bin:
> /cygdrive/c/ProgramData/Oracle/Java/javapath:
> /cygdrive/c/Tcl/bin:
> /cygdrive/c/Windows/system32:
> /cygdrive/c/Windows:
> ...
> If I manually run the makefile from its folder, fixing up any needed 
> variables, it seemed to run OK.  ( Although my VS2010 was initially damaged. 
> I had to set up the INCLUDE environment variable since I was getting 
> windows.h not found.  I think this is caused somehow by having VS2010, VS2011 
> & VS2012 originally, then removing all three and doing a clean install of 
> VS2010. I googled reports of others having this problem of corrupted include 
> path.)
> 
> My installation is unusual (?) in that all my JFX builder folders are on e: 
> whereas Cywgin is on c:  .  I need to use both paths /cygdrive/e/ and  
> /cygdrive/c/.
> 
> The detailed build instructions are detailed about versions for most 
> programs, but not for cygwin & make. I wonder which version you use in your 
> builds?
> 
> Does Gradle change the SHELL variable?  Does Gradle/cygwin/make assume all 
> programs are on say a C: drive?  mintty has no problem finding cygpath.  Is 
> Gradle looking for cygpath on e: instead of c:?
> 
> Now I have been playing with PATH & SHELL but nothing I do seems to help.
> 
> Any suggestions?
> 
> ---------------------------------------------------------------------------
> I am using:
> Gradle 1.8   Build time: 2013-09-24 07:32:33 UTC  Revision: 
> 7970ec3503b4f5767ee1c1c69f8b4186c4763e3d  Groovy:1.8.6
> Ant:          Apache Ant(TM) version 1.9.2 compiled on July 8 2013
> Ivy:          2.2.0
> JVM:          1.8.0_05 (Oracle Corporation 25.5-b02)
> OS:           Windows 8.1 6.3 x86
> $uname -a   CYGWIN_NT-6.3-WOW64 ROBIN-PC 1.7.33-2(0.280/5/3) 2014-11-13 15:45 
> i686 Cygwin
> make -v   GNU Make 4.0  Built for i686-pc-cygwin
> cygwin install, version 2.859
> I used CygWin setup-x86.exe so I presume this is 32-bit Cygwin
> JAVA_HOME points to (X86) jdk1.8.0.05
> JRE_HOME  (X86) jre8
> My machine also has 64-bit jdk1.8.0_25 & jdk1.8.0_05in Program Files

Reply via email to