conda-forge / trilinos-feedstock

A conda-smithy repository for trilinos.
BSD 3-Clause "New" or "Revised" License
1 stars 10 forks source link

Travis-CI Times Out #1

Closed wfspotz closed 6 years ago

wfspotz commented 6 years ago

It gets pretty far through the process -- fixing links -- but it fails with a timeout.

wfspotz commented 6 years ago

I re-ran and it timed out again, during installation. But there was an error reported:

error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: for: /Users/travis/miniconda3/conda-bld/trilinos_1507249666051/_b_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/libpike-blackbox.12.10.1.dylib (for architecture x86_64) option "-add_rpath /Users/travis/miniconda3/conda-bld/trilinos_1507249666051/_b_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib" would duplicate path, file already has LC_RPATH for: /Users/travis/miniconda3/conda-bld/trilinos_1507249666051/_b_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib
isuruf commented 6 years ago

staged-recipes has a higher timeout for travis-ci than the feedstocks from my experience. I guess the only way forward would be to find somebody with access to MacOSX and 10.9 sdk and ask them to do a manual build and then we'll upload it to conda-forge channel.

cc @conda-forge/core

wfspotz commented 6 years ago

I develop on Mac OS X. What do you mean by the 10.9 SDK? Would that be Xcode for the 10.9 version of the operating system?

isuruf commented 6 years ago

Would that be Xcode for the 10.9 version of the operating system?

Something like /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk

wfspotz commented 6 years ago

OK, I have found the appropriate SDK and installed it in its proper place. Any caveats on how to manually build it properly for upload?

isuruf commented 6 years ago

@jakirkham, @conda-forge/qt, you have done manual uploads before. Any pointers?

wfspotz commented 6 years ago

@jakirkham @conda-forge/qt @isuruf On Oct 24, I plan to give a short talk at the Trilinos Users Group Meeting about the Anaconda/conda-forge installers for Trilinos and PyTrilinos. It would be nice to have this issue worked out before then, if possible.

mingwandroid commented 6 years ago

@isuruf, @msarahan, @ocefpaf, @jakirkham, this is another example where adding RPATHs by default causes problems.

mingwandroid commented 6 years ago

.. and I believe it's the fact that the toolchain3 package 'hides' the flags it sets from the build system that causes this RPATH to get added twice:

https://github.com/conda-forge/toolchain3-feedstock/blob/6c0286b7457175cf7ecf12c2ca325d40eadfa728/recipe/conda-forge-cc#L247

isuruf commented 6 years ago

Yes, looks like adding RPATH by default is the problem here. This is using toolchain package though.

mingwandroid commented 6 years ago

You can probably get away with adding this by default in most situations, but adding them by default and hiding that fact from the build system is definitely not advisable.

This just hardens my conviction that we should not add -I${PREFIX}/include, -L${PREFIX}/lib and definitely not -Wl,-rpath to the toolchain activation scripts.

wfspotz commented 6 years ago

It is not clear to me from the discussion what I need to do here.

isuruf commented 6 years ago

Add to the top of build.sh

REMOVE="-Wl,-rpath,${PREFIX}/lib"
export LDFLAGS=${LDFLAGS//$REMOVE}
wfspotz commented 6 years ago

OK, got it. And are we expecting this to improve the build time?

Also, is there a reason that the directory structure is

trilinos-feedstock/recipe/recipe
isuruf commented 6 years ago

No, it would just fix the errors in Mac. You still have to build it locally. Can you build it locally and upload the built package somewhere? Then somebody with access will upload it to the conda-forge channel

isuruf commented 6 years ago

Post the build log as well

wfspotz commented 6 years ago

OK, I essentially did the following:

$ export CFLAGS="-isysroot /Users/wfspotz/SDK/MacOSX10.9.sdk"
$ export LDFLAGS="-syslibroot /Users/wfspotz/SDK/MacOSX10.9.sdk"
$ pwd
/Users/wfspotz/Development/trilinos-feedstock/recipe
$ conda build . | tee build.log.txt

build.log.txt

The built package is in https://github.com/wfspotz/conda-forge-tarballs/blob/master/mac-osx/trilinos-12.10.1-0.tar.bz2

isuruf commented 6 years ago

I don't think the first 2 lines had any effect, but toolchain package sets MACOSX_DEPLOYMENT_TARGET which should be okay and cmake will warn if the correct sdk is not found. @jakirkham, @ocefpaf can you upload the package?

wfspotz commented 6 years ago

@jakirkham, @ocefpaf Is there an issue with the tarball?

wfspotz commented 6 years ago

@isuruf is there anything holding this up? Seems like a simple upload process. Thanks.

isuruf commented 6 years ago

@wfspotz, I don't have permissions. @jakirkham, @ocefpaf have the permissions to do that.

ocefpaf commented 6 years ago

@wfspotz, I don't have permissions.

We need to upgrade your rights. I'll look into that later today.

@wfspotz I missed most of the discussion here due to the high level of noise in conda-forge, sorry. I can upload but I'll need @isuruf's :+1: and a checksum for the file so I can check it before uploading.

isuruf commented 6 years ago

I'm +1

wfspotz commented 6 years ago

@ocefpaf The sha256 checksum is eef04986eed47a07b03bcd8326a3884d5e3ca2cd0dad86ecdae836a281298733

ocefpaf commented 6 years ago

Done. It should be up in the channel.