View previous topic :: View next topic |
Author |
Message |
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Thu Oct 14, 2010 9:14 pm Post subject: |
|
|
version 1.45.0 is planned for nov 01. _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Fri Oct 15, 2010 6:58 pm Post subject: |
|
|
added following boost tools:
- bcp ( dev-utils/boost-bcp )
- inspect ( dev-utils/boost-inspect )
any tool you miss?
edit #1
a well, going to change to a single boost-tools ebuild.
edit #2
worked a bit on useflags[doc,test].
the former needs some more love.
now, there is a dev-util/boost-tools package.
- run a complete test with this package, hopefully.
- it may install a complete documentation as well. _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Oct 16, 2010 1:31 pm Post subject: |
|
|
reworked the boost{,-tools} eclasses.
- massaged useflag[doc]; though, some docs look good some may not; report please!
- tests may fail unfortunately; do not die
- cosmetics, cleanup, simplifications and wrapping boost eclass from boost-tools eclass
... was fun hacking
guys, test test test !! _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Oct 16, 2010 1:47 pm Post subject: |
|
|
another thing to mention!
to darwin arch users: please check if the following is really necessary, or how it could be reworked, please:
eclass/boost.eclass:365 wrote: | # boost's build system truely sucks for not having a destdir. Because for
# this reason we are forced to build with a prefix that includes the
# DESTROOT, dynamic libraries on Darwin end messed up, referencing the
# DESTROOT instread of the actual EPREFIX. There is no way out of here
# but to do it the dirty way of manually setting the right install_names.
[[ -z ${ED+set} ]] && local ED=${D%/}${EPREFIX}/
if [[ ${CHOST} == *-darwin* ]] ; then
einfo "Working around completely broken build-system(tm)"
for d in "${ED}"usr/lib/*.dylib ; do
if [[ -f ${d} ]] ; then
# fix the "soname"
ebegin " correcting install_name of ${d#${ED}}"
install_name_tool -id "/${d#${D}}" "${d}"
eend $?
# fix references to other libs
refs=$(otool -XL "${d}" | \
sed -e '1d' -e 's/^\t//' | \
grep "^libboost_" | \
cut -f1 -d' ')
for r in ${refs} ; do
ebegin " correcting reference to ${r}"
install_name_tool -change \
"${r}" \
"${EPREFIX}/usr/lib/${r}" \
"${d}"
eend $?
done
fi
done
fi |
_________________ hear hear |
|
Back to top |
|
|
honzulak1 n00b
Joined: 29 Jul 2010 Posts: 8
|
Posted: Tue Oct 19, 2010 6:11 pm Post subject: |
|
|
Hi geki, following error shows when emerging dev-libs/boost-program_options:
Code: | * Package: dev-libs/boost-program_options-1.44.0
* Repository: geki-overlay
* USE: amd64 elibc_glibc kernel_linux multilib threads userland_GNU
>>> Unpacking source...
tar xjpf /var/tmp/portage/dev-libs/boost-program_options-1.44.0/distdir/boost_1_44_0.tar.bz2 --exclude=boost_1_44_0/boost --exclude=boost_1_44_0/doc --exclude=boost_1_44_0/tools --exclude=boost_1_44_0/libs
tar xjpf /var/tmp/portage/dev-libs/boost-program_options-1.44.0/distdir/boost_1_44_0.tar.bz2 boost_1_44_0/libs/program_options boost_1_44_0/libs/detail
>>> Source unpacked in /var/tmp/portage/dev-libs/boost-program_options-1.44.0/work
>>> Preparing source in /var/tmp/portage/dev-libs/boost-program_options-1.44.0/work/boost_1_44_0 ...
* Cannot find $EPATCH_SOURCE! Value for $EPATCH_SOURCE is:
*
* /var/tmp/portage/dev-libs/boost-program_options-1.44.0/work/patches
* ( patches )
* ERROR: dev-libs/boost-program_options-1.44.0 failed:
* Cannot find $EPATCH_SOURCE!
*
* Call stack:
* ebuild.sh, line 56: Called src_prepare
* environment, line 5541: Called boost_src_prepare
* environment, line 1308: Called epatch '/var/tmp/portage/dev-libs/boost-program_options-1.44.0/work/patches'
* environment, line 2311: Called die
* The specific snippet of code:
* die "Cannot find \$EPATCH_SOURCE!" |
Code: | # ls /var/tmp/portage/dev-libs/boost-program_options-1.44.0/work/patch
ls: cannot access /var/tmp/portage/dev-libs/boost-program_options-1.44.0/work/patch: No such file or directory |
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
|
Back to top |
|
|
honzulak1 n00b
Joined: 29 Jul 2010 Posts: 8
|
Posted: Tue Oct 19, 2010 7:44 pm Post subject: |
|
|
Revision r15 is working fine, boost-program_options-1.44.0 compiled successfully, thanks! |
|
Back to top |
|
|
netcelli Apprentice
Joined: 29 Nov 2005 Posts: 169
|
Posted: Fri Oct 22, 2010 5:15 pm Post subject: |
|
|
I have problem emerging boost-headers because of package-collisions. Is it normal that this ebuild haven't slots? Thanks |
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Oct 22, 2010 5:43 pm Post subject: |
|
|
I also ran into problems with collisions when trying to emerge 1.44.0. I removed the previous version of boost, but now I get,
Code: |
>>> Emerging (1 of 20) dev-libs/boost-headers-1.44.0 from geki-overlay
Unavailable repository 'gentoo' referenced by masters entry in '/var/lib/layman/openoffice-geki/metadata/layout.conf'
* boost_1_44_0.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ]
* checking ebuild checksums ;-) ... [ ok ]
* checking auxfile checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
* CPV: dev-libs/boost-headers-1.44.0
* REPO: geki-overlay
* USE: amd64 elibc_glibc kernel_linux multilib userland_GNU
>>> Unpacking source...
>>> Source unpacked in /var/tmp/portage/dev-libs/boost-headers-1.44.0/work
>>> Preparing source in /var/tmp/portage/dev-libs/boost-headers-1.44.0/work/boost_1_44_0 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-libs/boost-headers-1.44.0/work/boost_1_44_0 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-libs/boost-headers-1.44.0/work/boost_1_44_0 ...
>>> Source compiled.
>>> Test phase [not enabled]: dev-libs/boost-headers-1.44.0
>>> Install boost-headers-1.44.0 into /var/tmp/portage/dev-libs/boost-headers-1.44.0/image/ category dev-libs
>>> Completed installing boost-headers-1.44.0 into /var/tmp/portage/dev-libs/boost-headers-1.44.0/image/
>>> Installing (1 of 20) dev-libs/boost-headers-1.44.0
!!! Cannot write to '/usr/include/boost'.
>>> Failed to install dev-libs/boost-headers-1.44.0, Log file:
>>> '/var/tmp/portage/dev-libs/boost-headers-1.44.0/temp/build.log'
* GNU info directory index is up-to-date.
|
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
|
Back to top |
|
|
netcelli Apprentice
Joined: 29 Nov 2005 Posts: 169
|
Posted: Fri Oct 22, 2010 6:34 pm Post subject: |
|
|
I followed your howto all works now thanks
|
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Oct 22, 2010 7:09 pm Post subject: |
|
|
Sorry geki, I should have looked at the howto before posting. Clearing out the old boost stuff fixed everything. Thanks. |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Fri Oct 22, 2010 7:27 pm Post subject: |
|
|
well, added interesting links to the top of the first post. that should help, hopefully.
edit #1
looks like 1.45.0 is delayed.
though, at least I found a patch for dev-libs/boost-mpi:1.44 to build against python-3.1. has been queued only since I prepared already for the new version.
it is hopefully applied to 1.45 then. _________________ hear hear |
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Nov 05, 2010 4:13 am Post subject: kdepimlibs can't find boost |
|
|
kdepimlibs-4.5.3 (and 4.5.2) fails b/c it can't find boost. I tried editing the kdepimlibs ebuild based on the instructions you give in the above link, but after I add boost-utils to inherit I can't create a new digest. Using ebuild digest on the altered version creates an error b/c ebuild can't find the boost-utils eclass. Any help would be appreciated. |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Fri Nov 05, 2010 10:15 am Post subject: |
|
|
well, you have to copy the eclass to the repo that holds the edited ebuild. a nice feature of portage. _________________ hear hear |
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Nov 05, 2010 5:53 pm Post subject: |
|
|
Heh, sorry about that. I added the eclass to /usr/portage/eclass and added the line add_boost_paths to the top of src_configure in kdepimlibs. Even with all of this kdepimlibs can't find boost and I get,
Code: |
-----------------------------------------------------------------------------
-- The following REQUIRED packages could NOT be located on your system.
-- You must install these packages before continuing.
-----------------------------------------------------------------------------
* Boost (1.34.0 or higher) <http://www.boost.org>
Boost C++ Libraries
The Boost libraries boost and boost-graph are required by several critical KDEPIM apps.
-----------------------------------------------------------------------------
|
I have all of the boost C++ libs installed except for random and graph_parallel b/c both of those fail during emerge. Any thoughts? |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Fri Nov 05, 2010 8:25 pm Post subject: |
|
|
well, someone has to find out what cmake needs, to find boost headers and libraries.
I do not use kde myself, so ... _________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Fri Nov 05, 2010 8:39 pm Post subject: |
|
|
there is a cmake boost finder: /usr/share/cmake/Modules/FindBoost.cmake
you may add this to the ebuild to debug:
Quote: | MYCMAKEARGS="-DBoost_DETAILED_FAILURE_MSG=TRUE -DBoost_DEBUG=TRUE" |
edit #1
I have queued a change for dev-libs/boost-random.
I hope that fixes the build. _________________ hear hear
Last edited by geki on Fri Nov 05, 2010 10:48 pm; edited 1 time in total |
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Nov 05, 2010 10:48 pm Post subject: |
|
|
FindBoost.cmake looks ok in that it should find 1.44.0 (this was a problem some other people had), but the added flags don't appear to give me any more debug output. I will have to search some more on this and let you know what I find out.
This is all I get,
Code: |
-- Performing Test __KDE_HAVE_GCC_VISIBILITY
-- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success
-- Found KDE 4.5 include dir: /usr/include
-- Found KDE 4.5 library dir: /usr/lib64
-- Found the KDE4 kconfig_compiler preprocessor: /usr/bin/kconfig_compiler
-- Found automoc4: /usr/bin/automoc4
-- Could NOT find Boost
-- Found gpgme-config at /usr/bin/gpgme-config
-- Found gpgme v1.3.0, checking for flavours...
|
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Fri Nov 05, 2010 11:18 pm Post subject: |
|
|
Geki it does appear to be using FindBoost.cmake b/c the debug flags you had me add get picked up, but cmake does not appear to want to do anything with them.
Code: |
src_configure() {
mycmakeargs=(
$(cmake-utils_use_build handbook doc)
$(cmake-utils_use_with ldap)
$(cmake-utils_use_with semantic-desktop Akonadi)
$(cmake-utils_use_with semantic-desktop SharedDesktopOntologies)
$(cmake-utils_use_with semantic-desktop Soprano)
$(cmake-utils_use_with semantic-desktop Nepomuk)
"-DBoost_DETAILED_FAILURE_MSG=TRUE -DBoost_DEBUG=TRUE"
)
add_boost_paths
kde4-base_src_configure
}
|
Code: |
cmake -C /var/tmp/portage/kde-base/kdepimlibs-4.5.3/temp/gentoo_common_config.cmake -DCMAKE_INSTALL_PREFIX=/usr -DKDE4_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc -DBUILD_doc=ON -DWITH_ldap=ON -DWITH_LDAP=ON -DWITH_Ldap=ON -DWITH_Akonadi=OFF -DWITH_SharedDesktopOntologies=OFF -DWITH_Soprano=OFF -DWITH_Nepomuk=OFF -DBoost_DETAILED_FAILURE_MSG=TRUE -DBoost_DEBUG=TRUE -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE=/var/tmp/portage/kde-base/kdepimlibs-4.5.3/temp/gentoo_rules.cmake /var/tmp/portage/kde-base/kdepimlibs-4.5.3/work/kdepimlibs-4.5.3
|
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Nov 06, 2010 1:15 pm Post subject: |
|
|
hmm, I added the boost code from kdepimlibs to my mysql-connector-c++ package which uses cmake, too.
there the boost check works as expected. so, what does kdepimlibs do?!
cmake configure log wrote: | -- Boost version: 1.44.0
-- Found the following Boost libraries:
-- graph |
_________________ hear hear |
|
Back to top |
|
|
geki Advocate
Joined: 13 May 2004 Posts: 2387 Location: Germania
|
Posted: Sat Nov 06, 2010 4:13 pm Post subject: |
|
|
fixed dev-libs/boost-random and dev-libs/boost-graph_parallel _________________ hear hear |
|
Back to top |
|
|
wazoo42 Apprentice
Joined: 13 Apr 2004 Posts: 165
|
Posted: Sat Nov 06, 2010 5:55 pm Post subject: |
|
|
I hard wired FindBoost.cmake to spit out the extra debug info and it can't find boost_graph.
Code: |
Boost version: 1.44.0
Boost include path: /usr/include
The following Boost libraries could not be found:
boost_graph
No Boost libraries were found. You may need to set Boost_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.
|
Given that boost-graph is installed and looks to be present in /usr/include/boost/graph I am guessing that something is going wrong with the naming... |
|
Back to top |
|
|
|