Opened 12 years ago
Closed 12 years ago
#36272 closed defect (fixed)
Building gwenhywfar4 fails with frameworks
Reported by: | mkae (Marko Käning) | Owned by: | mkae (Marko Käning) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.2 |
Keywords: | Cc: | michaelld (Michael Dickens) | |
Port: | gwenhywfar4 |
Description
qt4-mac now uses frameworks and gwenhywfar4 fails due to this:
. . . :info:build /bin/sh ../../libtool --tag=CXX --mode=link /usr/bin/g++-4.2 -pipe -O2 -arch x86_64 -Wall -Wall -L/opt/ clean-slate/lib -arch x86_64 -o libtest libtest.o libgwengui-qt4.la ../../src/libgwenhywfar.la -L/opt/clean-slate/lib -lQtGui -lQtCore ./../testdialogs/libgwengui-test.la :info:build libtool: link: cannot find the library `' or unhandled argument `-F/opt/clean-slate/Library/Frameworks' :info:build make[4]: *** [libtest] Error 1 . . . :info:build Warning: targets not executed for gwenhywfar4: org.macports.activate org.macports.build org.macports.destroot org.macports.install :error:build Failed to install gwenhywfar4 :debug:build couldn't open "/System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tclIndex": no such file or directory while executing "open [file join $dir tclIndex]" . . .
What to do?
Change History (13)
comment:1 Changed 12 years ago by mkae (Marko Käning)
Owner: | changed from macports-tickets@… to mk@… |
---|
comment:2 follow-up: 5 Changed 12 years ago by mkae (Marko Käning)
comment:3 Changed 12 years ago by mkae (Marko Käning)
And no, the file tclIndex indeed doesn't exist on my system.
$ ls -la /System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources total 0 drwxr-xr-x 8 root wheel 272 Jul 24 2009 . drwxr-xr-x 11 root wheel 374 Mar 17 2011 .. drwxr-xr-x 3 root wheel 102 Jul 24 2009 Documentation -rw-r--r-- 1 root wheel 1234 Jul 24 2009 Info.plist drwxr-xr-x 18 root wheel 612 Jul 24 2009 Scripts -rw-r--r-- 1 root wheel 2257 Jul 19 2002 license.terms drwxr-xr-x 4 root wheel 136 Jul 24 2009 tcl8 -rw-r--r-- 1 root wheel 445 Jul 24 2009 version.plist
Wondering whether TCL might be involved here...
comment:4 Changed 12 years ago by mkae (Marko Käning)
This is what I read with "info coreutils link":
`-d' `-F' `--directory' Allow users with appropriate privileges to attempt to make hard links to directories. However, note that this will probably fail due to system restrictions, even for the super-user.
Looks like there's a problem during link generation...
comment:5 follow-up: 7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to mk@…:
So, I guess the "-F" option needs an extra space in between!!!
Really? Does that help anything?
(I just don't understand why this port built in the past, since I don't see how qt4-mac influences this step...)
Presumably it built in the past because in the past qt4-mac was not doing an all-framework install. Now it is.
Replying to mk@…:
And no, the file tclIndex indeed doesn't exist on my system.
Please ignore the tclIndex portion of the error message; it is not relevant.
comment:6 follow-up: 8 Changed 12 years ago by michaelld (Michael Dickens)
The problem is in the lib*.la files; if you (temporarily) rename them (for QtCore and QtGui), then this port builds correctly. I'll look into this further over the weekend, though it might be next week before I can get enough time to actually fix it.
comment:7 Changed 12 years ago by mkae (Marko Käning)
Replying to ryandesign@…:
Replying to mk@…:
So, I guess the "-F" option needs an extra space in between!!!
Really? Does that help anything?
I couldn't locate this link-call anywhere yet, which is why I couldn't try to tweak it. :(
comment:8 Changed 12 years ago by mkae (Marko Käning)
Replying to michaelld@…:
The problem is in the lib*.la files; if you (temporarily) rename them (for QtCore and QtGui), then this port builds correctly.
Oh, I see, renaming to libQtCore.la instead of having it as QtCore.la below Frameworks is the problem...
Hmm, ok, so - actually - gwenhywfar4 has to be enabled to be use Qt4 as framework then. So, perhaps it's best if I also ask its developer(s).
comment:9 Changed 12 years ago by michaelld (Michael Dickens)
I think the issue is that QMake is not creating the lib*.la files correctly for Qt's frameworks -- and hence this is a qt4-mac issue. But, I won't know until I can compare and contrast the *.la files created by QMake for Qt as +framework with those as -framework. I'm guessing that GNU libtool is actually trying to use the information in libQtCore.la to do the linking, and since that information isn't well populated, libtool is having issues -- to me that's the only way to explain the strange info:build message since the actual command looks fully valid and does not even contain the ".../Library/Frameworks" reference while the lib*.la file does.
comment:12 Changed 12 years ago by michaelld (Michael Dickens)
The *.la file issue should be fixed in r98334. This port now installs cleanly for me after this change to qt4-mac.
comment:13 Changed 12 years ago by mkae (Marko Käning)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Hi Michael, thanks for all your effort!!! Indeed, the port builds just fine now. Greets, Marko
I tried using the correct lib location for --with-qt4-libs, but it also fails:
So, I guess the "-F" option needs an extra space in between!!! (I just don't understand why this port built in the past, since I don't see how qt4-mac influences this step...)