2016-05-13 13 views
2

Ich habe versucht, ErLang auf meinem Mac 64bit, Capitan zu installieren, ich habe versucht, es über brew zu installieren, aber wenn ich versuche zu laufen: observer.start bekomme ich diesen Fehler:undefined Funktion: wx_object.start/3

Ich habe auch versucht, erlang otp 18.3 mit erlang Lösungen zu installieren, aber ich habe den gleichen Fehler.

Irgendeine Idee?

EDIT

Wenn ich versuche, den Beobachter zu starten direkt von der Erlang-Shell:

^CiMac:~ Apple$ erl 
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] 

Eshell V7.3 (abort with ^G) 
1> observer:start(). 
** exception error: undefined function wx_object:start/3 
    in function observer_wx:start/0 (observer_wx.erl, line 72) 

EDIT2

iMac:~ Apple$ brew info erlang 
erlang: stable 18.3 (bottled), HEAD 
Programming language for highly scalable real-time systems 
https://www.erlang.org/ 
/usr/local/Cellar/erlang/18.3 (7,489 files, 273.8M) 
    Poured from bottle on 2016-05-13 at 12:24:59 
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/erlang.rb 
==> Dependencies 
Build: autoconf ✔, automake ✔, libtool ✔ 
Required: openssl ✔ 
Recommended: wxmac ✔ 
Optional: fop ✘ 
==> Options 
--with-dirty-schedulers 
    Enable experimental dirty schedulers 
--with-fop 
    Build with fop support 
--with-native-libs 
    Enable native library compilation 
--without-docs 
    Do not install documentation 
--without-hipe 
    Disable building hipe; fails on various OS X systems 
--without-wxmac 
    Build without wxmac support 
--HEAD 
    Install HEAD version 
==> Caveats 
Man pages can be found in: 
    /usr/local/opt/erlang/lib/erlang/man 

Access them with `erl -man`, or add this directory to MANPATH. 
iMac:~ Apple$ which erl 
/opt/local/bin/erl 

erl bei Gebräu info ist: /usr /local/Cellar/erlang/18.3 aber, was erl ich s: /opt/local/bin/erl , die /opt/local/lib/erlang/bin/erl Punkte

wenn ich /usr/local/Cellar/erlang/18.3/bin/erl begann Beobachter arbeiten!

so, Ich löschte den Alias ​​von Maus und I:

sudo ln -s /usr/local/Cellar/erlang/18.3/lib/erlang/bin/erl /opt/local/bin/erl 

aber ich bin nicht sicher /opt/local/lib/erlang/bin/erl wie es erstellt wurde .. eine Möglichkeit, es funktioniert jetzt ..

+2

Es sieht wirklich so aus, dass Erlang WxWidgets nicht hat. Sie können 'brew info erlang' ausprobieren, es zeigt Ihnen, welche Version installiert ist und ob die' wxmac' Abhängigkeit installiert ist oder nicht. Bist du dir sicher, dass du eigentlich den richtigen Erl startest? Der von brew installierte? ("Welcher Erl" in der Konsole druckt den erwarteten Pfad?) –

+0

Danke !, brew info zeigte, dass ich auf einen anderen Pfad bezog, siehe Edit 2 – simo

+0

Das Kompilieren von Erlang aus der Quelle überspringt oft wxWidgets, crypto und odbc. Der einfachste Weg, um Erlang voll zu bekommen, ist die Verwendung von Paketen von der Erlang Solutions-Website: https://www.erlang-solutions.com/resources/download.html Stellen Sie sicher, dass Sie KEINE Enterprise-Pakete installieren (sie sind borken), sondern Standard-Pakete arbeiten Sie gut und sparen Sie Zeit. – tkowal

Antwort

2

die Syntax Da es sieht aus wie Sie Elixir :-)

Wie auch immer verwenden, ist eine mögliche Antwort, die Sie benötigen Erlang mit WxWidgets gebaut, die das GUI-Toolkit von dem Beobachter verwendet wird.

Wenn ich an der Homebrew Formel sucht Erlang (http://brewformulas.org/Erlang), zeigt es, dass es die „wxMac“ Abhängigkeit wird installieren, so sollte es in WxWidgets bringen ...

Was passiert, wenn Sie versuchen, das starten Beobachter direkt von der Erlang-Shell wie folgt?

1> observer:start().

(Ich habe es mit MacPorts installiert und es funktioniert aus der Box).

EDIT

Es sieht wirklich wie die Erlang nicht über WxWidgets. Sie können versuchen brew info erlang, es wird Ihnen zeigen, welche Version installiert ist und ob die wxmac Abhängigkeit installiert ist oder nicht.

Sind Sie sicher, dass Sie tatsächlich das richtige erl starten? Der von brew installierte? ("which erl" in der Konsole den erwarteten Pfad drucken?)

+0

Bitte siehe oben Bearbeiten – simo

2

Auf vielen Systeme Erlang mit wx wird standardmäßig nicht unterstützt. Es kann durch eine Kompilierungsoption aktiviert werden. Manchmal gibt es ein separates Paket, das mit wx-Unterstützung kompiliert wurde, z. erlang-wx auf FreeBSD.

Eine schnelle Google-Suche zeigt diesen Beispielartikel, der einige Informationen über recompiling Erlang on Mac with wx ermöglicht aktiviert.