[erlang-questions] Yaws, ErlyWeb and Windows.
Ahmed Ali
ahmed.nawras@REDACTED
Sun Sep 16 12:39:30 CEST 2007
Hi All,
I had the same experience at first until I found the following page for
building YAWS under CYGWIN on a windows machine. It works for me. I think
the Makefile for windows should be fixed to prevent such headaches.
http://bloggablea.wordpress.com/2007/04/21/building-yaws-for-windows/
Best regards
Ahmed Al-Issaei
On 9/14/07, Bob Cowdery <Bob.Cowdery@REDACTED> wrote:
>
> Ghalib
>
> Thanks for that. I hope you can resolve it. I don't think I know enough at
> the moment but I'm learning.
>
> Bob
>
> -----Original Message-----
> From: erlang-questions-bounces@REDACTED
> [mailto:erlang-questions-bounces@REDACTED]On Behalf Of Ghalib Suleiman
> Sent: 14 September 2007 12:16
> To: erlang-questions@REDACTED
> Subject: Re: [erlang-questions] Yaws, ErlyWeb and Windows.
>
>
> Hi Bob, Erlyweb does indeed have a bug on Windows where it doesn't
> seem to be registering components properly (I ran into this last week
> myself), thus making it unusable. There's a slight discussion about
> it on the Erlyweb Google Group - I plan to hunt down the bug when I'm
> back at work tomorrow, as I don't have access to a Windows machine at
> home.
>
> -Ghalib
>
> On Sep 13, 2007, at 11:00 AM, Bob Cowdery wrote:
>
> > Robert
> >
> > Thanks very much for that. I will have a go when I'm out the woods.
> > At the moment the pre-built version is working ok.
> >
> > However, I wonder, do you use ErlyWeb because I'm having trouble
> > with it. I posted a message on the forum yesterday but no replies
> > yet. Essentially I can't get it to generate code for a MySQL table
> > and it can't seem to find the controller that it generated anyway.
> > In fact it dosn't seem think they are controllers and views.
> >
> > Any help appreciated.
> >
> > Bob
> >
> > -----Original Message-----
> > From: erlang-questions-bounces@REDACTED
> > [mailto:erlang-questions-bounces@REDACTED]On Behalf Of Robert
> > Raschke
> > Sent: 11 September 2007 10:36
> > To: erlang-questions@REDACTED
> > Subject: Re: [erlang-questions] Yaws, ErlyWeb and Windows.
> >
> >
> >> Bob Cowdery wrote:
> >>> Hi All
> >>>
> >>> Can someone give me the picture on Yaws and ErlyWeb under Windows
> >>> please
> >>
> >> I'm sorry about that - to my knowledge there is quite a lot
> >> of people running yaws under windows. I don't run windows at
> >> all any longer - and I'll just have to leave it up to the
> >> yaws/windows community to write e.g. a proper wiki entry on how to do
> >> it. I know for sure that it atleast used to work - I made sure it
> >> worked once, but it might have gone bad.
> >
> > Here's how I build yaws on Windows:
> >
> > My source root is $ROOT.
> > Unpack yaws-1.68 into $ROOT/lib/yaws.
> > Have a folder called $ROOT/extra with the files yaws_generated.erl and
> > yaws.app (although I forget why I need yaws.app):
> >
> > yaws_generated.erl:
> > %%
> > %---------------------------------------------------------------------
> > -
> > %%% File : yaws_generated.template
> > %%% Author : Klacke <klacke@REDACTED>
> > %%% Purpose :
> > %%% Created : 10 Jun 2002 by Klacke <klacke@REDACTED>
> > %%
> > %---------------------------------------------------------------------
> > -
> >
> > %% generated code from some environment variables
> > %% especially VARDIR is important since it controls
> > %% where the --hup and friends
> >
> > -module(yaws_generated).
> > -author('klacke@REDACTED').
> >
> > -compile(export_all).
> >
> > version() -> "1.68".
> >
> > vardir() -> "C:/yaws/var".
> >
> > ctldir() -> "C:/yaws/var/run/yaws".
> >
> > etcdir() -> "C:/yaws/etc".
> >
> > % (Or whatever you want your defaults to be.)
> >
> > yaws.app:
> > {application, yaws, [
> > {description, "yaws WWW server"},
> > {vsn, "1.68"},
> > {modules, [
> > yaws,
> > yaws_app,
> > yaws_ticker,
> > yaws_config,
> > yaws_server,
> > yaws_sup,
> > yaws_api,
> > yaws_log,
> > yaws_ls,
> > yaws_debug,
> > yaws_compile,
> > yaws_ctl,
> > yaws_cgi,
> > yaws_zlib,
> > yaws_generated,
> > mime_type_c,
> > mime_types,
> > yaws_session_server,
> > yaws_404,
> > yaws_revproxy,
> > yaws_html,
> > yaws_log_file_h,
> > yaws_rss,
> > yaws_dav,
> > yaws_pam,
> > json,
> > jsonrpc,
> > yaws_jsonrpc,
> > yaws_xmlrpc,
> > haxe,
> > yaws_rpc,
> > yaws_soap_srv,
> > yaws_soap_lib
> > ]},
> > {registered, []},
> > {mod, {yaws_app, []}},
> > {env, []},
> > {applications, [
> > kernel,
> > stdlib
> > ]}
> > ]}.
> >
> > And then I run this batch script:
> >
> > build_yaws.bat:
> > @echo off
> > setlocal
> >
> > copy /Y extra\yaws_generated.erl lib\yaws\src
> > cd lib\yaws\src
> >
> > set ERLC="C:\Program Files\erl5.5.4\bin\erlc"
> > set ERL="C:\Program Files\erl5.5.4\bin\erl"
> >
> > set ERLCOPTS=-W -pa .. -I../include -o ../ebin
> > set ERLOPTS=-noshell -pa ../ebin
> >
> >
> > %ERLC% %ERLCOPTS% yaws.erl
> > %ERLC% %ERLCOPTS% yaws_app.erl
> > %ERLC% %ERLCOPTS% yaws_ticker.erl
> > %ERLC% %ERLCOPTS% yaws_config.erl
> > %ERLC% %ERLCOPTS% yaws_server.erl
> > %ERLC% %ERLCOPTS% yaws_sup.erl
> > %ERLC% %ERLCOPTS% yaws_api.erl
> > %ERLC% %ERLCOPTS% yaws_log.erl
> > %ERLC% %ERLCOPTS% yaws_ls.erl
> > %ERLC% %ERLCOPTS% yaws_debug.erl
> > %ERLC% %ERLCOPTS% yaws_compile.erl
> > %ERLC% %ERLCOPTS% yaws_ctl.erl
> > %ERLC% %ERLCOPTS% yaws_cgi.erl
> > %ERLC% %ERLCOPTS% yaws_zlib.erl
> > %ERLC% %ERLCOPTS% yaws_generated.erl
> > %ERLC% %ERLCOPTS% yaws_session_server.erl
> > %ERLC% %ERLCOPTS% yaws_404.erl
> > %ERLC% %ERLCOPTS% yaws_revproxy.erl
> > %ERLC% %ERLCOPTS% yaws_html.erl
> > %ERLC% %ERLCOPTS% yaws_log_file_h.erl
> > %ERLC% %ERLCOPTS% yaws_rss.erl
> > %ERLC% %ERLCOPTS% yaws_dav.erl
> > %ERLC% %ERLCOPTS% yaws_pam.erl
> > %ERLC% %ERLCOPTS% json.erl
> > %ERLC% %ERLCOPTS% jsonrpc.erl
> > %ERLC% %ERLCOPTS% yaws_jsonrpc.erl
> > %ERLC% %ERLCOPTS% yaws_xmlrpc.erl
> > %ERLC% %ERLCOPTS% haxe.erl
> > %ERLC% %ERLCOPTS% yaws_rpc.erl
> > %ERLC% %ERLCOPTS% yaws_soap_srv.erl
> > %ERLC% %ERLCOPTS% yaws_soap_lib.erl
> >
> > del /F charset.def
> > echo. > charset.def
> >
> > %ERLC% %ERLCOPTS% mime_type_c.erl
> > %ERL% %ERLOPTS% -s mime_type_c compile
> > %ERLC% %ERLCOPTS% mime_types.erl
> >
> > pause
> > endlocal
> >
> >
> > I have also made a small attempt at writing a yaws.bat file, but I
> > haven't used this in a few years:
> >
> > @echo off
> > setlocal
> >
> > set HOME=C:/yaws
> > set yawsdir=C:/yaws/erlang/yaws-1.68
> >
> > set erl=C:\Program Files\erl5.5.4\bin\erl.exe
> > set werl=C:\Program Files\erl5.5.4\bin\werl.exe
> >
> > set debug=
> > set daemon=
> > set interactive=
> > set trace=
> > set conf=
> > set runmod=
> > set sname=
> > set heart=
> > set xpath=
> > set mnesia=
> > set id=default
> > set pdist=
> > set erlarg=
> >
> > :NEXTARG
> > set arg=%1
> > shift
> > if "%arg%"=="" goto ENDARGS
> >
> > if "%arg%"=="-i" goto INTERACT
> > if "%arg%"=="--interactive" goto INTERACT
> >
> > if "%arg%"=="-w" goto WINTERACT
> > if "%arg%"=="--winteractive" goto WINTERACT
> >
> > if "%arg%"=="-D" goto DAEMON
> > if "%arg%"=="--daemon" goto DAEMON
> >
> > if "%arg%"=="-d" goto DEBUG
> > if "%arg%"=="--debug" goto DEBUG
> >
> > if "%arg%"=="-t" goto TRACETR
> > if "%arg%"=="--tracetraf" goto TRACETR
> >
> > if "%arg%"=="-T" goto TRACEHT
> > if "%arg%"=="--tracehttp" goto TRACEHT
> >
> > if "%arg%"=="-I" goto ID
> > if "%arg%"=="--id" goto ID
> >
> > if "%arg%"=="-x" goto TRACEOUT
> > if "%arg%"=="--traceout" goto TRACEOUT
> >
> > if "%arg%"=="--trace" goto TRACE
> >
> > if "%arg%"=="-M" goto MNESIADIR
> > if "%arg%"=="--mnesiadir" goto MNESIADIR
> >
> > if "%arg%"=="-c" goto CONF
> > if "%arg%"=="--conf" goto CONF
> >
> > if "%arg%"=="-pa" goto PA
> > if "%arg%"=="--pa" goto PA
> >
> > if "%arg%"=="-r" goto RUNMOD
> > if "%arg%"=="--runmod" goto RUNMOD
> >
> > if "%arg%"=="-h" goto HUP
> > if "%arg%"=="--hup" goto HUP
> >
> > if "%arg%"=="-s" goto STOP
> > if "%arg%"=="--stop" goto STOP
> >
> > if "%arg%"=="-ls" goto LS
> > if "%arg%"=="--ls" goto LS
> >
> > if "%arg%"=="-S" goto STATUS
> > if "%arg%"=="--status" goto STATUS
> >
> > if "%arg%"=="-load" goto LOAD
> > if "%arg%"=="--load" goto LOAD
> >
> > if "%arg%"=="-j" goto CTLTRACE
> > if "%arg%"=="--ctltrace" goto CTLTRACE
> >
> > if "%arg%"=="-v" goto VERSION
> > if "%arg%"=="--version" goto VERSION
> >
> > if "%arg%"=="-sname" goto SNAME
> > if "%arg%"=="--sname" goto SNAME
> >
> > if "%arg%"=="-name" goto NAME
> > if "%arg%"=="--name" goto NAME
> >
> > if "%arg%"=="-heart" goto HEART
> > if "%arg%"=="--heart" goto HEART
> >
> > if "%arg%"=="-proto_dist" goto PROTO
> > if "%arg%"=="--proto_dist" goto PROTO
> >
> > if "%arg%"=="-erlarg" goto ERLARG
> > if "%arg%"=="--erlarg" goto ERLARG
> >
> > if "%arg%"=="-check" goto CHECK
> > if "%arg%"=="--check" goto CHECK
> >
> > goto HELP
> >
> > :INTERACT
> > set interactive=true
> > set debug= -yaws debug
> > set daemon=
> > goto NEXTARG
> >
> > :WINTERACT
> > set interactive=true
> > set debug= -yaws debug
> > set daemon=
> > set erl=%werl%
> > goto NEXTARG
> >
> > :DAEMON
> > set daemon= -detached
> > goto NEXTARG
> >
> > :DEBUG
> > set debug= -boot start_sasl -yaws debug
> > goto NEXTARG
> >
> > :TRACETR
> > set trace= -yaws trace traffic
> > goto NEXTARG
> >
> > :TRACEHT
> > set trace= -yaws trace http
> > goto NEXTARG
> >
> > :ID
> > set id=%1
> > shift
> > goto NEXTARG
> >
> > :TRACEOUT
> > set traceoutput= -yaws traceoutput
> > goto NEXTARG
> >
> > :TRACE
> > set traceoutput= -yaws traceoutput
> > set trace= -yaws trace traffic
> > goto NEXTARG
> >
> > :MNESIADIR
> > set mnesia= -mnesia dir %1 -run mnesia start
> > shift
> > goto NEXTARG
> >
> > :CONF
> > set conf= -conf %1
> > shift
> > goto NEXTARG
> >
> > :PA
> > set xpath= %xpath% -pa %1
> > shift
> > goto NEXTARG
> >
> > :RUNMOD
> > set runmod= -runmod %1
> > shift
> > goto NEXTARG
> >
> > :HUP
> > set ex="%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl hup
> > goto NEXTARG
> >
> > :STOP
> > set ex="%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl stop
> > goto NEXTARG
> >
> > :LS
> > set ex="%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl ls
> > goto NEXTARG
> >
> > :STATUS
> > set ex="%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl status
> > goto NEXTARG
> >
> > :LOAD
> > "%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl load %id% %1 %2 %
> > 3 %4 %5 %6 %7 %8 %9
> > goto END
> >
> > :CTLTRACE
> > set ex="%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws_ctl trace %1
> > shift
> > goto NEXTARG
> >
> > :VERSION
> > "%erl%" -noshell -pa "%yawsdir%/ebin" -s yaws printversion
> > goto END
> >
> > :SNAME
> > set sname= -sname %1
> > shift
> > goto NEXTARG
> >
> > :NAME
> > set sname= -name %1
> > shift
> > goto NEXTARG
> >
> > :HEART
> > set heart= -heart
> > goto NEXTARG
> >
> > :PROTO
> > set pdist= -proto_dist %1
> > shift
> > goto NEXTARG
> >
> > :ERLARG
> > set erlarg=%erlarg% %1
> > shift
> > goto NEXTARG
> >
> > :CHECK
> > mkdir "%HOME%/.yaws/"
> > mkdir "%HOME%/.yaws/%id%"
> > "%erl%" -noshell -pa "%yawsdir%/ebin" %xpath% -s yaws_ctl check %id
> > % %1 %2 %3 %4 %5 %6 %7 %8 %9
> > goto END
> >
> > :ENDARGS
> >
> > if NOT DEFINED ex goto NOEX
> > %ex% %id%
> > goto END
> > :NOEX
> >
> > if "%id%"=="" goto NOID
> > set id=-yaws id %id%
> > :NOID
> >
> > set trace=%trace% %traceoutput%
> >
> > if "%daemon%%interactive%"=="" goto HELP
> >
> > set XEC=%daemon% %heart% -pa "%yawsdir%/ebin" %xpath% %sname% %pdist
> > % %erlarg% %debug% -s yaws %trace% %conf% %runmod% %mnesia% %id%
> >
> > set HEART_COMMAND=
> > if "%heart%%daemon%"=="" goto NOHEART
> > echo set HEART_COMMAND="%erl%" %XEC%
> > set HEART_COMMAND="%erl%" %XEC%
> >
> > :NOHEART
> > echo "%erl%" %XEC%
> > "%erl%" %XEC%
> > goto END
> >
> > :HELP
> > echo "usage: "
> > echo ""
> >
> > echo " yaws -i | --interactive -- interactive (no
> > daemon) mode"
> > echo " yaws -w | --winteractive -- interactive (werl) "
> > echo " yaws --daemon -- daemon mode"
> >
> > echo ""
> >
> > echo ""
> > echo " Auxilliary flags for the daemon: "
> > echo " --id Id -- Set system id"
> > echo " --debug -- debug mode "
> > echo " --conf File -- set config file"
> > echo " --tracetraf -- trace traffic"
> > echo " --tracehttp -- trace http traffic"
> > echo " --traceout -- trace output to stdout"
> > echo " --version -- print version"
> > echo " --pa path -- add load path"
> > echo " --mnesiadir dir -- start Mnesia in dir"
> > echo " --proto_dist Mod -- use Mod for distrib"
> > echo " --sname xxx -- start with sname xxx"
> > echo " --name xxx -- start with name xxx"
> > echo " --runmod mod -- call mod:start/0 at startup"
> > echo " --heart -- auto restart yaws if it
> > crashes"
> > echo " --erlarg X -- pass argument X to $erl"
> >
> > echo ""
> >
> > echo "ctl functions ... "
> > echo " yaws --hup [--id ID] -- hup the daemon, reload
> > conf"
> > echo " yaws --stop [--id ID] -- stop the daemon"
> > echo " yaws --status [--id ID] -- query the daemon status"
> > echo " yaws --load Modules -- load modules"
> > echo " yaws --ls -- list Yaws nodes and
> > their status"
> > echo " yaws --ctltrace traffic|http -- toggle trace of
> > running daemon"
> > echo " yaws --check YawsFile [IncDirs] -- test compile File"
> >
> > :END
> > endlocal
> >
> >
> >
> > Robby
> >
> > --
> > r fullstop raschke around tombob fullstop com
> >
> >
> > _______________________________________________
> > erlang-questions mailing list
> > erlang-questions@REDACTED
> > http://www.erlang.org/mailman/listinfo/erlang-questions
> > _______________________________________________
> > erlang-questions mailing list
> > erlang-questions@REDACTED
> > http://www.erlang.org/mailman/listinfo/erlang-questions
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20070916/28340112/attachment.htm>
More information about the erlang-questions
mailing list