Add pic variant to cflags in boost.#9750
Add pic variant to cflags in boost.#9750adamjstewart merged 2 commits intospack:developfrom exactlab:exactlab_boost_add_pic_flag
Conversation
|
Your build faild because you're trying to link with the boost static Is that what you're trying to do? Statically link the boost libs That's a valid use case, but a bit unusual. It would be more common Either way, the description is misleading and should instead say that |
|
Hi Mark, you were right. For some reasons ecFlow (https://confluence.ecmwf.int/display/ECFLOW/, a library I'm compiling) builds its libraries statically: # cd /../spack/opt/spack/linux-centos7-x86_64/gcc-8.2.0/ecflow-4.11.1-*
# ll lib/python2.7/site-packages/ecflow/ecflow.so
-rwxr-xr-x 1 root root 159M Nov 7 18:12 lib/python2.7/site-packages/ecflow/ecflow.so*
# nm lib/python2.7/site-packages/ecflow/ecflow.so |grep -i boost
000000000082c740 W boost_asio_detail_posix_thread_function
0000000000f97e40 d DW.ref._ZTIN5boost10filesystem16filesystem_errorE
...If I find a way to dinamically link boost in ecFlow I think it would be the best solution. I'm fine setting it to false, even though leaving it to True shouldn't harm (right?), and we could avoid re-compiling boost if a library like ecFlow (which I'm going to submit soon) depends on boost and wants the pic variant: when setting the pic variant to False, a user that compiles boost for other packages would compile the non-pic version, and when packages like ecFlow are compiled, the pic version is required, and a new boost should be built.
Looking at https://travis-ci.org/spack/spack/jobs/451977005, it seems more of a connection problem to codecov (and I've already seen some of these in other builds):
I copied it from the variant description of many packages: I can open another issue substituting all those description (should be an easy job with a sed line), but I think we should stick to the "wrong", but commonly used, variant description inside this issue. |
|
PIC can slightly slow down the code. Not a lot, but there are plenty For the description, I suggest "Build static libraries with The problem with saying "for shared libs" is that it suggests that That's why I consider it misleading. |
Didn't know this. I'm not a great compiler expert. Thanks! I'll change the description text according with your suggestions. |
While installing a package depending on the boost library, I've got the following error:
Therefore I've added the pic variant, as in #9605.