我正在尝试用IntelliJ和我的Linux box来设置Haxe。我从haxe(haxe 3.1.3)站点和社区版intellij下载了Linux 64位二进制文件。我在intellij中安装了Haxe插件,然后创建了一个新的Haxe模块。对于sdk,我选择了我没有从haxe站点加载的haxe文件夹。我创建了一个新的配置来编译和运行,但它给我一个错误,它无法定位标准库。为什么会这样呢?
Haxe目录树
haxe-3.1.3
├── extra
└── std
├── cpp
├── cs
├── flash
├── flash8
├── haxe
├── java
├── js
├── neko
├── php
├── sys
└── toolshaxe-3.1.3是我为intellij中的haxe工具箱选择的目录。创建一个新的Haxe项目让我选择Haxe 3.1.3 (这意味着工具包是正确设置的,因为它得到了认可)。intellij项目中的External Libraries包含带有std的Haxe dir (当展开文件夹以查看其中包含的内容时)。
在SDK的"Project structure“对话框中,我看到库设置正确( haxe -3.1.3/std),并且haxe可执行文件也设置正确(haxe-3.1.3/haxelib)。类路径包含库目录
当我使用openFl和闪存作为目标来编译它时,我得到了以下错误
Error:compilation failed
/home/avlahop/development/Haxe/haxe-3.1.3/haxelib
Error:libneko.so: cannot open shared object file: No such file or directory当我切换到Haxe编译器和Neko或Javascript时,我得到以下结果
Information:Compilation completed with 1 error and 1 warning in 0 sec
Information:1 error
Information:1 warning
Error:compilation failed
Warning:Standard library not found我的班级
package ;
class Test3 {
public function new() {
}
public static function main(): Void{
trace("Hello from haxe and IntelliJ IDEA");
}
}我真的很想参与其中但又不能开始...
发布于 2014-11-09 22:31:07
手动进入/usr/lib并查找libneko.so。有时安装可能会在最后抛出一个1或一些东西,也就是libneko.so.1。
正确地重命名该文件。您可能必须使用较新版本的neko,我必须从git编译才能使其工作:https://github.com/HaxeFoundation/neko
如果您没有注意到任何问题,请确保环境变量是正确的。在您选择的文本编辑器中打开/etc/environment
export HAXE_STD_PATH=/usr/local/haxe/std:. # path to std + :.
export HAXE_HOME=/usr/whatever/haxe # path to haxe
export NEKOPATH=/usr/local/neko # path to neko请注意,如果您使用的是HAXE_LIBRARY_PATH,那么在更高版本的Haxe中将其更改为HAXE_STD_PATH。您还需要此文件的引用,使用sudo打开您的/etc/profile并检查:
. /etc/environment我就知道这么多。希望这对你有好处。
发布于 2018-06-10 13:26:29
基于@johnink anwser,我在linux命令行模式下工作:
我从https://haxe.org/download/下载了Linux二进制文件,并在下面的路径中解压缩
/some/folder/haxe-tool我将这几行添加到我的~/bashrc中
export HAXE_STD_PATH="/some/folder/haxe-tool/std"
export HAXE_HOME="/some/folder/haxe-tool"
export PATH=$PATH":"$HAXE_HOME并使用此命令进行了测试:
haxe -main HelloWorld --interp我也用这个命令转换成了javascript
haxe -js HelloWorld.js -main HelloWorld使用此文件:
class Main {
static public function main():Void {
trace("Hello World");
}
}以"Hello World“为例:
https://stackoverflow.com/questions/26826885
复制相似问题