02:27
nikunj has quit [Read error: Connection reset by peer]
02:28
nikunj has joined #ste||ar
02:55
hkaiser has quit [Quit: bye]
05:30
<
Yorlik >
HPX Macros are driving me nuts again.
05:32
<
Yorlik >
I have a HPX_PLAIN_ACTION in a header file, but need to include this header file in another compilation unit. Now I get double symbol linkage errors. What's the best way architecturally to get rid of this?
05:35
<
Yorlik >
zao: Just realizing you were referencing this issue. Any idea how to fix this?
05:43
<
heller >
Declaration vs Definition
06:00
<
Yorlik >
How do I just declare an action?
06:01
<
Yorlik >
So - If I'd move the HPX_PLAIN_ACTION macro to the CPP - what would I have to put into the hpp to not get an unknown identifier in the cppp which includes the header?
06:03
<
Yorlik >
HPX_DECLARE_PLAIN_ACTION ? It's basically undocumented.
06:07
<
Yorlik >
And it seems not to work - at least as I tried: "use of undefined type ..."
06:26
<
Yorlik >
HPX_DECLARE_PLAIN_ACTION looks defect to me
06:28
<
Yorlik >
#define HPX_DECLARE_PLAIN_ACTION(...) HPX_DECLARE_ACTION(__VA_ARGS__) <--- HPX_DECLARE_ACTION where?
06:35
<
Yorlik >
So - Ho do I declare a plain action to have it usable in another file including the HPP?
07:40
nikunj has quit [Remote host closed the connection]
12:50
hkaiser has joined #ste||ar
13:13
<
Yorlik >
hkaiser: yt?
13:13
<
Yorlik >
I have a linking error which gives me a headache.
13:14
<
hkaiser >
missing one of the action macros?
13:14
<
Yorlik >
Which one would that be?
13:15
<
Yorlik >
I only did the actions with methods or did not have this double include problem.
13:15
<
Yorlik >
I'm kinda clueless how to do this with a plain action
13:16
<
hkaiser >
you should pass the same arguments to DEFINE action and register action, I believe, would need to see the real code...
13:16
<
Yorlik >
I am not using a define and register pair here
13:16
<
Yorlik >
It's just HPX_PLAIN_ACTION
13:17
<
hkaiser >
could you create a minimal example reproducing the issue?
13:18
<
Yorlik >
Argh ... sure.
13:18
<
Yorlik >
More work though.
13:18
<
Yorlik >
I think the problem really is the double inclusion of HPX_PLAIN ACTION
13:18
<
hkaiser >
Yorlik: shrug, what do you suggest?
13:18
<
Yorlik >
Quick screenshare?
13:19
<
hkaiser >
ahh, it's a duplicated symbol
13:19
<
Yorlik >
I think I'd need a way to declare plain action properly
13:19
<
Yorlik >
And put the definition into the cpp
13:20
<
hkaiser >
yah, I think that's it, use HPX_DEFINE_PLAIN_ACTION_DECLARATION in the header nstead and put the HPX_DEFINE_PLAIN_ACTION in a source file
13:20
<
Yorlik >
OK - trying ...
13:20
<
hkaiser >
let me have a look at the macro definitions
13:22
<
hkaiser >
Yorlik: it's HPX_DECLARE_PLAIN_ACTION
13:22
<
hkaiser >
and HPX_DEFINE_PLAIN_ACTION
13:23
<
hkaiser >
use the same arguments for both
13:23
<
Yorlik >
I am using it like: HPX_DECLARE_PLAIN_ACTION( agns::game::lua::run_lua, run_lua_a );
13:24
<
Yorlik >
And I am getting this error:
13:24
<
Yorlik >
'run_lua_a': an undefined class is not allowed as an argument to compiler intrinsic type trait '__is_base_of'
13:24
<
hkaiser >
Yorlik: pls create a small example
13:24
<
hkaiser >
should be a nobrainer
13:24
<
hkaiser >
one header, two sources
13:25
<
hkaiser >
the error is generated by the register_action macro?
13:25
<
hkaiser >
or by what?
13:25
<
hkaiser >
Yorlik: ^^
13:26
<
Yorlik >
Looking into it ...
13:26
<
Yorlik >
There is no register action macro
13:26
<
hkaiser >
in your gist you have one
13:26
<
Yorlik >
Woops - moment ... its different now -- I'll update the gist
13:30
<
hkaiser >
give me a bit of time
13:30
<
Yorlik >
Yeah --- the error message is cruel ;)
13:31
<
hkaiser >
no, I'm creating a small example
13:32
<
Yorlik >
This will go into the snippets git once it works, so we have that use case covered.
13:34
<
Yorlik >
I was thinking about including the built html into the git and make it a github website so one could easily browse and read.
13:39
<
hkaiser >
need breakfast now
13:39
<
Yorlik >
Thanks ! Working on it
13:47
<
Yorlik >
I'll go try to compile the example
14:13
<
hkaiser >
Yorlik: you miss some header
14:14
<
hkaiser >
probably hpx/include/components.hpp
14:14
<
Yorlik >
Which one would that be?
14:14
<
Yorlik >
OK - lemme try
14:14
<
hkaiser >
how should I know?
14:14
<
hkaiser >
don't know which you have
14:14
<
hkaiser >
Yorlik: my example compiles and links ;-)
14:15
<
Yorlik >
VSCODE is teasing me - setup issues
14:15
<
Yorlik >
Wading through it
14:15
<
hkaiser >
I can't make it simpler than what I posted
14:16
<
Yorlik >
It's just some stupid CMake / VSCODE setup quirk
14:17
<
Yorlik >
I think I'll add a question about the hpx includes to our list
14:18
<
hkaiser >
as a start #include <hpx/hpx.hpp>, that will pull in everything
14:18
<
hkaiser >
later you can reduce the scope
14:21
<
Yorlik >
I usually do that.
14:21
<
Yorlik >
And it's included
14:21
<
Yorlik >
FFS CMake: project(hpx_snippets CXX) <-- I'll never get used to this being CXX and not CPP ... :P
14:35
<
Yorlik >
Fixing/Updating my vcpkg install ...
15:19
<
Yorlik >
Where do you set your Boost_DIR when using vcpkg? I'm having issues finding Boost in VSCODE
15:20
<
Yorlik >
I used: vcpkg\installed\x64-windows\share
15:20
<
Yorlik >
but it complains not finding BoostConfig.cmake
15:21
<
Yorlik >
Oh crap - rubberduck effect - bug - forget it
17:06
<
diehlpk_work >
hkaiser, Please try again to access the github class room
17:06
<
hkaiser >
diehlpk_work: yep, works now, thanks
17:07
<
diehlpk_work >
I double checked and you have to be a co-owner of the org
17:09
<
diehlpk_work >
Next week students can link their private github repo to moodle for each submission and we can import their details from moodle
17:09
<
diehlpk_work >
Github plans to integrate more features
17:26
<
hkaiser >
diehlpk_work: when is your first lecture?
17:26
<
diehlpk_work >
Tuesday
17:27
<
diehlpk_work >
Lockett Hall
17:27
<
hkaiser >
mind if I joined?
17:27
<
hkaiser >
just silently sitting in the back...
17:27
<
diehlpk_work >
No, you are welcome to join
17:28
<
hkaiser >
what oom is it?
17:30
<
diehlpk_work >
Tuesday and Thursday, 09:00 to 10:20, 130 LCKT
17:31
<
diehlpk_work >
First floor in the math department. In the mid of the first floor is a corridor connecting both entrances of the building.
17:31
<
diehlpk_work >
The room's entrance is in the mid corridor
17:32
<
diehlpk_work >
We will cover the details of the course and a brief introduction to cpp
17:35
<
diehlpk_work >
main, loops, if, and variables to check the student's knowledge of C++
19:23
Vir has joined #ste||ar
20:44
lsl88 has joined #ste||ar
22:30
<
Yorlik >
hkaiser: yt?
23:10
<
hkaiser >
Yorlik: here
23:11
<
Yorlik >
I have issues using HPX and Boost with vcpkg. How do you do it?
23:11
<
Yorlik >
I can find Boost, but HPX gives me a message to switch off the boost compat check.
23:11
<
Yorlik >
Once I do that it doesn't find the library
23:11
<
Yorlik >
It's complaining about a different boost root
23:13
<
hkaiser >
Yorlik: I use boost from vcpkg
23:13
<
Yorlik >
But not HPX?
23:13
<
hkaiser >
well, I develp HPX so I don't use it throuhg vcpkg
23:13
<
Yorlik >
I am getting this error: The specified BOOST_ROOT differs from what has been used when configuring
23:13
<
Yorlik >
[cmake] and building HPX. Please use the same Boost versions. HPX boost is
23:13
<
Yorlik >
[cmake] /share/boost and users is F:/vcpkg/installed/x64-windows/.
23:14
<
hkaiser >
do you use hpx through vcpkg?
23:14
<
Yorlik >
I tried for this small example
23:14
<
hkaiser >
you tried what?
23:14
<
Yorlik >
because I want to use your example in the doc project I thought it might be easier to use vcpkg
23:15
<
hkaiser >
sure, should work
23:15
<
Yorlik >
This solution to the linker error
23:15
<
hkaiser >
so you installed boost, hwloc and hpx in vcpkg?
23:15
<
hkaiser >
and that gives you the cmake error?
23:15
<
Yorlik >
lemme make a gist for the CMakeLists really quick
23:16
<
hkaiser >
do you point your cmake to the vcpkg toolchain file?
23:18
<
Yorlik >
I tried with and without
23:18
<
Yorlik >
I'll try with cmake-gui now and once more
23:18
<
hkaiser >
why do you need all of the VCPGK entries in that cmake file?
23:19
<
hkaiser >
and why do you need the BOOXT_xxx entries?
23:19
<
hkaiser >
no need to do find_package(boost)
23:19
<
hkaiser >
all you need is find_package(HPX)
23:20
<
hkaiser >
and set the CMKAE_TOOLCHAIN_FILE
23:28
<
Yorlik >
I am getting the same error: [build] ninja: error: '/debug/lib/boost_filesystem-vc140-mt-gd.lib', needed by 'src/include_test_1/include_test_1.exe', missing and no known rule to make it
23:28
<
hkaiser >
that's a different error
23:28
<
Yorlik >
It seems to miss a potion of the path - I wonder which CMake Variable I miught be missing
23:28
<
hkaiser >
you don't miss anything
23:28
<
Yorlik >
Had that error before after switching off the compat check
23:28
<
hkaiser >
the cmake file should be one line: find_package(HPX)
23:28
<
Yorlik >
What do you think is it?
23:29
<
hkaiser >
and you invoke it with -DCMAKE_TOOLCHAIN_FILE=<vcpkg>/scripts/buildsystems/vcpkg.cmake
23:34
<
Yorlik >
Something might be wrong with my VSCODE Cmake plugin - it seems to ignore the setting - checking ...