User forums > Using Code::Blocks
How to define a Variable value frome shell cmd
(1/1)
ccdric:
Hi Everybody,
I intend to define a variable in CB project from shell cmd return value.
example :
--- Quote ---PYBIND_INCLUDE=$(python -m pybind11 --includes)
--- End quote ---
of course $(something) use something as a variable label in C::B project, unlike executed in the shell environment.
Does anyone have any ideas?
have a nice day
stahta01:
The tilted tic does that in places in CB [`] the tic between the square brackets.
Edit you need one at both the start and end of the command.
Edit2: I have never used it to define a variable; so, not sure where all it works.
I have used it in both compiler and linker extra setting.
Tim S.
ccdric:
Thanks stahta01 :
it works halfway :D
in CodeBlocks_project_file/Project/Build/Environment
add 2 variables :
--- Code: --- <Variable name="PYBIND_INCLUDES" value="`python -m pybind11 --includes`" />
<Variable name="PYBIND_EXTENTION" value="`python -m pybind11 --extension-suffix`" />
--- End code ---
in CodeBlocks_project_file/Project/Build/Target/Compiler
add this :
--- Code: ---<Add option="$(PYBIND_INCLUDES)" />
--- End code ---
(this is the half part that works fine :) )
But here it doesn't works :( :
in CodeBlocks_project_file/Project/Build/Target/Option/@output
--- Code: --- <Option output="bin/Debug/trie$(PYBIND_EXTENTION)" ... >
--- End code ---
the var is literally copied in the link cmd :
--- Code: ---g++-13 -shared obj/Debug/src/mod1.o obj/Debug/src/mod2.o -o "bin/Debug/libmylib`python -m pybind11 --extension-suffix`.so" -m64
--- End code ---
Perhaps there is a better way for that second part ?
(I try ton compile c++ lib for use it in python. It's new for me. I 'll hive probably other question how to parameterize C::B to fit in python env)
stahta01:
You might try a post build step to rename the file or copy it.
Tim S.
Navigation
[0] Message Index
Go to full version