Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migration to conda build 3 - Qt4 #94

Merged
merged 89 commits into from
Mar 29, 2019
Merged

Migration to conda build 3 - Qt4 #94

merged 89 commits into from
Mar 29, 2019

Conversation

marcelotrevisani
Copy link
Member

Checklist

  • Used a fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@marcelotrevisani
Copy link
Member Author

Related to #83

@marcelotrevisani
Copy link
Member Author

@conda-forge-admin , please rerender

Copy link
Contributor

@ccordoba12 ccordoba12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left a couple of comments that I think will help to make the builds pass on Linux.

recipe/meta.yaml Outdated Show resolved Hide resolved
recipe/meta.yaml Outdated Show resolved Hide resolved
Removed dbus and libxcb
@marcelotrevisani
Copy link
Member Author

marcelotrevisani commented Feb 22, 2019

It seems that it needs dbus 0.93

cc: @jakirkham

@ccordoba12
Copy link
Contributor

@marcelotrevisani, I think you can instruct Qt to not build the dbus bindings. They are not that important in Qt4.

@@ -5,8 +5,8 @@
chmod +x configure

if [ $(uname) == Linux ]; then
compiler_mkspec=qtbase/mkspecs/common/g++-base.conf
flag_mkspec=qtbase/mkspecs/linux-g++/qmake.conf
compiler_mkspec=mkspecs/common/g++-base.conf

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change also on else

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will wait linux to finish

- {{ cdt('libxxf86vm') }} # [linux]
- {{ cdt('libx11-devel') }} # [linux]
- {{ cdt('libxext-devel') }} # [linux]
- perl

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add expat as well to solve linux XML issues

- xorg-libx11 # [linux]
- xorg-libxext # [linux]
- xorg-libxrender # [linux]
- xorg-libxt # [linux]

test:
files:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add {{ compiler('cxx') }} otherwise the tests will fail

@denivyruck
Copy link

denivyruck commented Mar 7, 2019

On windows it's compiling with -system-libtiff but still it's not found: fatal error LNK1181: cannot open input file 'libtiff.lib'. Let's try to compile it with -qt-libtiff?

recipe/build.sh Outdated
export CPPFLAGS="$CPPFLAGS -DGLX_GLXEXT_PROTOTYPES"
else
compiler_mkspec=mkspecs/common/clang.conf
flag_mkspec=mkspecs/macx-clang/qmake.conf

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On Qt4 archive we don't have this configuration, we only have:

  • macx-icc
  • macx-llvm
  • macx-pbbuilder
  • macx-xcode
  • macx-xlc

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We do have darwin-g++ tho.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry I just checked we also have 'macx-g++', 'g++40' and 'g++42'. My eyes are failing me

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a problem, anyway I'm using macx-llvm

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@marcelotrevisani, Qt 4 probably doesn't compile with the latest Clang, so you should use g++42 (at least that's what we used in Anaconda).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok! I will change it! I will just wait the CI linux to finish
Thanks!

@marcelotrevisani
Copy link
Member Author

On windows it's compiling with -system-libtiff but still it's not found: fatal error LNK1181: cannot open input file 'libtiff.lib'. Let's try to compile it with -qt-libtiff?

I really don't like it, I would like to use that just if there is no other option. The reason is: in conda in general we try to avoid internal dependencies of each package, in this case qt rely on libtiff which would be better to use from a package or from our cdt packages, because if we use qt-libtiff it will use a libtiff which is shipped along with qt4, which we want to avoid.

@denivyruck
Copy link

denivyruck commented Mar 7, 2019

@marcelotrevisani ooooh I see. Do we have a cdt package for that then? I see it's already included as a dependency (but not cdt)

@marcelotrevisani
Copy link
Member Author

@marcelotrevisani ooooh I see. Do we have a cdt package for that then? I see it's already included as a dependency

Yes, we have to investigate why is not finding this lib, because it is already included... which is odd

@denivyruck
Copy link

denivyruck commented Mar 11, 2019

@ccordoba12 we're having some weird issues on osx when testing. Did you ever see this before? Seems like he's getting the wrong SDK somehow.

ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd, file was built for unsupported file format ( 0x2D 0x2D 0x2D 0x20 0x21 0x74 0x61 0x70 0x69 0x2D 0x74 0x62 0x64 0x2D 0x76 0x33 ) which is not the architecture being linked (x86_64): /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libSystem.tbd
Undefined symbols for architecture x86_64:
  "__Unwind_Resume", referenced from:
      _main in main.o
      QDebug::operator<<(char const*) in main.o
      QDebug::~QDebug() in main.o
  "___stack_chk_fail", referenced from:
      _main in main.o
      QDebug::operator<<(char const*) in main.o
      QDebug::~QDebug() in main.o
  "___stack_chk_guard", referenced from:
      _main in main.o
      QDebug::operator<<(char const*) in main.o
      QDebug::~QDebug() in main.o
ld: symbol(s) not found for architecture x86_64

@ccordoba12
Copy link
Contributor

That's very similar to

https://travis-ci.org/conda-forge/pyqt-feedstock/jobs/488744479#L602

(from conda-forge/pyqt-feedstock#45) but I don't understand its cause. As far as I know, it's an XCode issue (i.e. you probably need to use an older XCode to build Qt4).

@denivyruck
Copy link

That's very similar to

https://travis-ci.org/conda-forge/pyqt-feedstock/jobs/488744479#L602

(from conda-forge/pyqt-feedstock#45) but I don't understand its cause. As far as I know, it's an XCode issue (i.e. you probably need to use an older XCode to build Qt4).

Nice! I'll try to investigate that, thanks :)

@marcelotrevisani
Copy link
Member Author

marcelotrevisani commented Mar 12, 2019

cc: @ocefpaf
Do you have some hint here? Just osx is failing

I skipped the other platforms because they are already passing and qt takes too much time to compile, just trying to save some time in our CI

@marcelotrevisani
Copy link
Member Author

For some reason is trying to compile for i386 even when we specified x86_64

@denivyruck
Copy link

For some reason is trying to compile for i386 even when we specified x86_64

If you remove the arch flag it will turn back to 64 lol

@marcelotrevisani
Copy link
Member Author

@conda-forge-admin , please rerender

@marcelotrevisani
Copy link
Member Author

@ocefpaf , please review and merge it if you agree
:)

@ocefpaf
Copy link
Member

ocefpaf commented Mar 29, 2019

@ocefpaf , please review and merge it if you agree
:)

88 commits and 37 changed files... I guess that only the CIs will be "reviewing" this PR ;-p

@@ -102,3 +137,4 @@ extra:
- mingwandroid
- gillins
- msarahan
- marcelotrevisani
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

recipe/meta.yaml Outdated
files:
- test
commands:

- conda inspect linkages -p $PREFIX qt # [not win]
- conda inspect objects -p $PREFIX qt # [osx]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We no longer need these lines but let's get this merged as soon as it passes. We can remove these with a [skip ci] PR later.

recipe/meta.yaml Outdated
- vc9 # [win and py27]
- vc10 # [win and py34]
- vc14 # [win and py>=35]
number: 1000
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be 9 instead of 1000 not that the migration is done the 1000 has no meaning.
(Also, if it was during the migration, it should've been 1009.)

recipe/meta.yaml Outdated
- vc10 # [win and py34]
- vc14 # [win and py>=35]
number: 1000
# skipping linux for now, because it is already being packaged on Linux
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These comments are staled. Can you removed them?

Copy link
Member

@ocefpaf ocefpaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comments that can be addressed now or later. It is up to you if you are in a hurry to get this merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants