#16378 closed enhancement (fixed)
boost-1.36
Reported by: | sal@… | Owned by: | sanchom (Sancho McCann) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.6.0 |
Keywords: | boost | Cc: | sanchom (Sancho McCann), blair (Blair Zajac), andi@…, andrea.bedini@…, arsptr@…, MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
Port: |
Description
Attached is an updated port file for boost 1.36 (came out earlier this month). I didn't have time to turn it into a diff. Note that files/patch-boost-serialization-utility.hpp and files/patch-boost-serialization-utility.hpp are no longer necessary.
Attachments (4)
Change History (22)
Changed 16 years ago by sal@…
comment:1 Changed 16 years ago by sanchom (Sancho McCann)
Thanks for doing this!
I see you appended a patchfile 'patch-configure'. Since you also removed the line that adds the patch file 'patch-build-type-Jamroot', I assume 'patch-configure' is doing the job that 'patch-build-type-Jamroot' used to do?
Could you please attach 'patch-configure'?
comment:2 Changed 16 years ago by adfernandes (Andrew Fernandes)
I'm really, really starting to hate the boost build system.
I use MPI a lot, and need gcc43. So... build openmpi with gcc43... and try to integrate with boost. BLECH.
I believe the attached diff works... libs seem to build properly...
(Notice that some of the patch files are no longer needed... I verified them in the boost distribution...)
comment:3 Changed 16 years ago by adfernandes (Andrew Fernandes)
Okay - mpi + python breaks the install. DAMN. Also, linking seems to have gone wonky.
Might be best to remove the gcc42 and gcc43 variants for now.
Yep, I definitely HATE boost.build.
(FYI - building MPI + python creates two "mpi.so" files - one multithreaded, the other not, both of which conflict in name during the install, that need to go in the correct python2.? site-packages directory, with install_name_tool mangling...)
Yep - really, really hate boost.build. Sorry for the noise.
comment:4 Changed 16 years ago by adfernandes (Andrew Fernandes)
Okay - I've tested my "Portfile.diff" set, and the compilation with gcc43 works just fine. However, there is yet-another bug in the jam install when using the macports gcc43 variant. The problems are two-fold:
- Two variants of python's "mpi.so" are built, one "release", the other multi-threaded. I have no idea how different they really are, under Darwin. However, boost's installer gets confused because now we have two libraries with the same name.
- If you delete one (or both) of these "mpi.so" files to allow the installer to complete, it dies on on internal error that, frankly, I can't diagnose.
No, I'm not writing a custom toolset description for jam - too much time, and I'm not smart enough to do it.
Would it be worthwhile adding a proper "install it" script that would handle staging to the destroot, fixing library install names, and all that stuff? Doing it in the portfile is crazy. Criminey!
(Sorry to sound so frustrated, but building 4000+ files to use MPI and experiment with python is starting to wear me down...)
comment:5 follow-up: 6 Changed 16 years ago by adfernandes (Andrew Fernandes)
Okay. After much recompiling, I've got openmpi + python compiling and installing. You can't use boost's internal "make install" because, well, it is broken, and sucks. (Can't handle the fact that there are two "mpi.so" objects, etc. Of course, on darwin there is no difference between "normal" and "mt" builds...
After all that effort, it appears that mpi+python is broken, at least on OS X. See this comment.
If you type
python2.5 test.py
where 'test.py' has
import mpi print "I am process %d of %d." % (mpi.rank, mpi.size)
you get
Fatal Python error: Interpreter not initialized (version mismatch?) Abort trap
So, I've googled around, and that python error appears when you're mixing python versions (or debug/release versions) or using python built with a different compiler...
Take a look at the "python.log" file (attached)... it appears from the ktrace that all the right python bits are being loaded.
I give up. I curse boost build tools. I curse boost libraries. The headers are wonderful... but ARGH!
(The Portfile.diff I submitted has been updated.)
Changed 16 years ago by adfernandes (Andrew Fernandes)
Attachment: | Portfile.diff added |
---|
version bump to 1.36.0, added gcc43 and gcc42 variants, uses internal install
Changed 16 years ago by adfernandes (Andrew Fernandes)
Attachment: | python.log added |
---|
kdump NAMI log of python2.5 + openmpi
comment:6 Changed 16 years ago by blb@…
comment:7 Changed 16 years ago by blair (Blair Zajac)
I'll be needing 1.36.0 very soon.
Can you also look at incorporating these hotfixes in the build:
http://comments.gmane.org/gmane.comp.lib.boost.announce/201 http://svn.boost.org/trac/boost/wiki/ReleasePractices/HotFixes
Thanks, Blair
comment:9 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)
Owner: | changed from macports-tickets@… to sanchom@… |
---|
comment:13 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Attached is my attempt at boost version 1.36.
I put back the zlib and bzip2 dependencies, which were
removed in r34913.
The reason for the removal
Error: Target org.macports.destroot returned: no files matched glob pattern "*-1_35.dylib"
was fixed by setting the environment variables in destroot.env as well as build.env.
I do not see two versions of mpi.so, which is good, and the correct answer is given by:
/opt/local/bin/python -c 'import mpi; print "I am process %d of %d." % (mpi.rank, mpi.size)'
comment:14 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Cc: | mcalhoun@… added |
---|
Cc Me!
Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Attachment: | Portfile.2.diff added |
---|
comment:15 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
boost was upgraded in r43281.
The issues with python25 (but not python26) remain.
There are still no variants for other compilers.
Perhaps this ticket should be closed.
The outstanding issues can then get their own tickets.
comment:16 Changed 16 years ago by sanchom (Sancho McCann)
Agree. This should be closed. Also, I'm active again.
comment:17 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:18 Changed 16 years ago by (none)
Milestone: | Port Enhancements |
---|
Milestone Port Enhancements deleted
updated Portfile