I almost got this working on OSX. See my hacks in the attached patch file if you want to get where I got :-) [where the heck do you get err_sys from on our box??] In addition to that patch file, I also had to rename libpty.so to libpty.jnilib on OSX. I have no idea why. This is my first experience with Native Java :-) Sadly, I got lost after managing to get the DomTerm to run. make-pty completes, and then the DomTerm window pops up with a scroll-bar, but nothing else. I get this stack trace in the terminal window from which I launched make run-pty, netscape.javascript.JSException: ReferenceError: Can't find variable: makeDomTerm at com.sun.webkit.dom.JSObject.fwkMakeException(JSObject.java:128) at com.sun.webkit.WebPage.twkExecuteScript(Native Method) at com.sun.webkit.WebPage.executeScript(WebPage.java:1427) at javafx.scene.web.WebEngine.executeScript(WebEngine.java:948) at org.domterm.javafx.WebTerminal.initialize(WebTerminal.java:226) at org.domterm.javafx.WebTerminal$1.changed(WebTerminal.java:173) at org.domterm.javafx.WebTerminal$1.changed(WebTerminal.java:170) at com.sun.javafx.binding.ExpressionHelper$SingleChange.fireValueChangedEvent(ExpressionHelper.java:182) at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.property.ReadOnlyObjectWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyObjectWrapper.java:176) at javafx.beans.property.ReadOnlyObjectWrapper.fireValueChangedEvent(ReadOnlyObjectWrapper.java:142) at javafx.beans.property.ObjectPropertyBase.markInvalid(ObjectPropertyBase.java:112) at javafx.beans.property.ObjectPropertyBase.set(ObjectPropertyBase.java:146) at javafx.scene.web.WebEngine$LoadWorker.updateState(WebEngine.java:1226) at javafx.scene.web.WebEngine$LoadWorker.dispatchLoadEvent(WebEngine.java:1337) at javafx.scene.web.WebEngine$LoadWorker.access$1100(WebEngine.java:1219) at javafx.scene.web.WebEngine$PageLoadListener.dispatchLoadEvent(WebEngine.java:1206) at com.sun.webkit.WebPage.fireLoadEvent(WebPage.java:2388) at com.sun.webkit.WebPage.fwkFireLoadEvent(WebPage.java:2232) at com.sun.webkit.network.URLLoader.twkDidFinishLoading(Native Method) at com.sun.webkit.network.URLLoader.notifyDidFinishLoading(URLLoader.java:830) at com.sun.webkit.network.URLLoader.lambda$didFinishLoading$95(URLLoader.java:821) at com.sun.webkit.network.URLLoader$$Lambda$153/1668192911.run(Unknown Source) at com.sun.javafx.application.PlatformImpl.lambda$null$170(PlatformImpl.java:295) at com.sun.javafx.application.PlatformImpl$$Lambda$51/405125410.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$171(PlatformImpl.java:294) at com.sun.javafx.application.PlatformImpl$$Lambda$50/526533065.run(Unknown Source) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: netscape.javascript.JSException: ReferenceError: Can't find variable: makeDomTerm at org.domterm.javafx.WebTerminal.initialize(WebTerminal.java:237) at org.domterm.javafx.WebTerminal$1.changed(WebTerminal.java:173) at org.domterm.javafx.WebTerminal$1.changed(WebTerminal.java:170) at com.sun.javafx.binding.ExpressionHelper$SingleChange.fireValueChangedEvent(ExpressionHelper.java:182) at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) at javafx.beans.property.ReadOnlyObjectWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyObjectWrapper.java:176) at javafx.beans.property.ReadOnlyObjectWrapper.fireValueChangedEvent(ReadOnlyObjectWrapper.java:142) at javafx.beans.property.ObjectPropertyBase.markInvalid(ObjectPropertyBase.java:112) at javafx.beans.property.ObjectPropertyBase.set(ObjectPropertyBase.java:146) at javafx.scene.web.WebEngine$LoadWorker.updateState(WebEngine.java:1226) at javafx.scene.web.WebEngine$LoadWorker.dispatchLoadEvent(WebEngine.java:1337) at javafx.scene.web.WebEngine$LoadWorker.access$1100(WebEngine.java:1219) at javafx.scene.web.WebEngine$PageLoadListener.dispatchLoadEvent(WebEngine.java:1206) at com.sun.webkit.WebPage.fireLoadEvent(WebPage.java:2388) at com.sun.webkit.WebPage.fwkFireLoadEvent(WebPage.java:2232) at com.sun.webkit.network.URLLoader.twkDidFinishLoading(Native Method) at com.sun.webkit.network.URLLoader.notifyDidFinishLoading(URLLoader.java:830) at com.sun.webkit.network.URLLoader.lambda$didFinishLoading$95(URLLoader.java:821) at com.sun.webkit.network.URLLoader$$Lambda$153/1668192911.run(Unknown Source) at com.sun.javafx.application.PlatformImpl.lambda$null$170(PlatformImpl.java:295) at com.sun.javafx.application.PlatformImpl$$Lambda$51/405125410.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$171(PlatformImpl.java:294) at com.sun.javafx.application.PlatformImpl$$Lambda$50/526533065.run(Unknown Source) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) Caused by: netscape.javascript.JSException: ReferenceError: Can't find variable: makeDomTerm at com.sun.webkit.dom.JSObject.fwkMakeException(JSObject.java:128) at com.sun.webkit.WebPage.twkExecuteScript(Native Method) at com.sun.webkit.WebPage.executeScript(WebPage.java:1427) at javafx.scene.web.WebEngine.executeScript(WebEngine.java:948) at org.domterm.javafx.WebTerminal.initialize(WebTerminal.java:226) ... 24 more I didn't understand much from your response Per. Looks like I've got some reading to do before I get to use my toy :-)