Amun icon indicating copy to clipboard operation
Amun copied to clipboard

Compiler is unable to compile samples

Open Soupertonic opened this issue 2 years ago • 3 comments

Platform

  • ISA: ARM64
  • CPU: Apple M1 Pro
  • OS: Ventura 13.1 (22C65)
  • LLVM: 14.0.6_1

Description

When attempting to compile the samples, the compiler would spit outCan't create output file Undefined error: 0 for all files it's trying to compile. It seems like it is unable to write to output.o for some reason. (Message is generated here: amun_compiler.cpp, line 72; this commit's file tree 85457f4a1024328b9de8f01a34f29c0e057c9eca)

Unsuccessful attempts to fix the issue

  • Replaced OF_None with OF_Append
  • Replaced OpenFlags with FileAccess value of FA_Write
  • chmod'd Amun compiler binary (777)
  • chmod'd Amun compiler directory (777, recursively)

Reproduction

  • Clone Amun repository
git clone https://github.com/amrdeveloper/amun.git
  • Follow build instructions
cd amun
mkdir build
cd build
cmake ..
make
  • Try compiling samples
python scripts/compile_samples.py

Soupertonic avatar May 08 '23 09:05 Soupertonic

Hello @soupertonic,

This issue happened on M1,

Can you please try to compile to IR

cd bin
./amun compile-ir ../samples/Hello.amun

to run it using lli

lli output.ll

then we can try to link manually to detect the issue and solve it soon

AmrDeveloper avatar May 08 '23 16:05 AmrDeveloper

I'm afraid that doesn't work. When trying to compile to IR I get the same error message.

$ ./amun emit-ir ../samples/Hello.amun
Can't create output file Undefined error: 0

It creates the output.ll file but its size is 0 bytes.

Soupertonic avatar May 08 '23 17:05 Soupertonic

That means the problem is not trom external linker or creating files, it comes from emit object or ll code oj M1,

I will try to found the reason for that and solve it soon, also i will provide a docker file to be useful in this temporary cases

AmrDeveloper avatar May 08 '23 17:05 AmrDeveloper