armory3d / armory3d/armory

Linux hl target build fail

Open
#1,683 6 comments 1 reaction 0 assignees View on GitHub
bug
Dominant language
C++
Stars
3.3k
Forks
353
Avg merge
3d 16h
Merged PRs (30d)
1

Description

**System**
Blender: b2.82
Armory: latest commit
OS: Linux 64bit - Ubuntu 18.04.4 LTS
Code::Blocks: 20.03

**Description**
I'm failing to get a default cube scene to compile to the linux (C) target from linux using the steps [in the wiki](https://github.com/armory3d/armory/wiki/linux) with this error:
```
/usr/bin/ld: obj/Debug/mnt/5A01071800E170B0/Armory SDK/Kha/Backends/KoreHL/hl/src/std/math.o: undefined reference to symbol 'acos@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
```
I looked for a solution for this and some Stack Overflow's answers suggest adding -lm to the compilation flags, so I did just that by going to the Project -> Build Settings -> Linker and added m to the flags, and that still doesn't solve the issue but moves to failing with 50 new issues, so not sure what is going on.

**To Reproduce**
1) Open Blender -> new file,
2) add the linux-hl target in the `Armory Exporter` panel,
3) hit `Build` or `Publish`,
4) Open Code::Blocks -> File -> Open, select the test.cbp file that is in build_test/linux-hl-build/
5) Hit Build

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the default-cube export using the Linux wiki steps, then inspect the generated test.cbp in build_test/linux-hl-build/ and its linker settings. Start from the reported undefined reference to acos and the generated Linux HL build configuration; done means the exported default cube builds successfully without the linker failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
blender, c, linux
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.