Broken compilervalue


#1

Hey,
in my project (openfl, target:windows) i try to include .cpp/.h files like this in hx class:

@:buildXml('<include name="./../../../src/MyBuild.xml" />')

and my MyBuild.xml looks like this:

<xml>
<set name="PROJECT_DIR" value="${this_dir}" />
<set name="CPP_DIR" value="${PROJECT_DIR}/cpp" />

<files id='haxe'>
	<compilervalue name="-I" value="${CPP_DIR}/include/" />
	<compilervalue name="-I" value="${CPP_DIR}/src/" />
</files>

<target id='haxe' tool='linker' toolid='exe'>
	<lib name='${CPP_DIR}/lib/libvlc.lib' if='windows'/>
	<lib name='${CPP_DIR}/lib/libvlccore.lib' if='windows'/>
</target>
</xml>

Since Lime 7.0.0 version this xml part stopped working and i get error LNK2019: unresolved external symbol errors when linking.

<compilervalue name="-I" value="${CPP_DIR}/include/" />
<compilervalue name="-I" value="${CPP_DIR}/src/" />

Is there a new tags to include/look for all files in these directories?


#2

Can you tell if ${this_dir} is resolving to the path you expect?


#3

yes, tested with
<error value="${this_dir}" />


#4

Are you trying to point out to the generated C++ headers and source files from Haxe?

Lime uses different default output directories now than it used to, though it is now configurable, so you can make it the same as before if you want.

I believe the default is “bin/windows/obj/” and not “bin/windows/cpp/obj” now for the generated code. “bin/windows/neko” is now just “bin/neko” by default


#5

no , im trying to include others headers not generated.
We are talking about project https://github.com/datee/HaxeVLC , which compiled fine before lime version 7.0.0.
I know it has more issues , but now i want to solve this error.


#6

Perhaps you could build a project with and without the older Lime version, and compare the directory structure. I’m still a bit confused what the “cpp/include” path is