Home » U++ Library support » U++ Library : Other (not classified elsewhere) » Linking problem
| Linking problem [message #31309] |
Sun, 20 February 2011 15:15  |
busiek
Messages: 71 Registered: February 2011 Location: Poland
|
Member |
|
|
On Ubuntu Natty (development version of Ubuntu) I have problems with linking. For instance, compiling HelloWorld from examples gives in the end:
Linking...
/usr/bin/ld: /home/kubus/upp/out/Draw/GCC.Debug.Debug_full.Gui.Shared/$bl itz.o: undefined reference to symbol 'FT_New_Face'
/usr/bin/ld: note: 'FT_New_Face' is defined in DSO /usr/lib64/libfreetype.so.6 so try adding it to the linker command line
/usr/lib64/libfreetype.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
I installed upp and theide version 3192-maverick-amd64. I found a similar problem somewhere else:
https://bugzilla.redhat.com/show_bug.cgi?id=677692
|
|
|
|
| Re: Linking problem [message #31316 is a reply to message #31309] |
Sun, 20 February 2011 23:42   |
|
|
| busiek wrote on Sun, 20 February 2011 15:15 | On Ubuntu Natty (development version of Ubuntu) I have problems with linking. For instance, compiling HelloWorld from examples gives in the end:
Linking...
/usr/bin/ld: /home/kubus/upp/out/Draw/GCC.Debug.Debug_full.Gui.Shared/$bl itz.o: undefined reference to symbol 'FT_New_Face'
/usr/bin/ld: note: 'FT_New_Face' is defined in DSO /usr/lib64/libfreetype.so.6 so try adding it to the linker command line
/usr/lib64/libfreetype.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
I installed upp and theide version 3192-maverick-amd64. I found a similar problem somewhere else:
https://bugzilla.redhat.com/show_bug.cgi?id=677692
|
Hi busiek,
First of all, I can fully confirm this problem. Theide itself fails to build on natty both in i386 and amd64, just tried to build it in launchpad.
The problem is that debian (and hence Ubuntu as well) changed its attitude to indirect linking (see here). To make U++ work in natty and new debian we will have to revise the packages to explicitly list all the libraries needed without relaying on the indirect linking.
Hopefully it is just a few libs in uppsrc. I will try to do this ASAP. BTW: We are not the only project affected by this - it broke 1400+ packages in natty 
Also if you are interested in using upp/theide in natty, I can add natty versions to nightly builds as soon as this problem is resolved.
Best regards,
Honza
|
|
|
|
|
|
| Re: Linking problem [message #31320 is a reply to message #31319] |
Mon, 21 February 2011 11:15   |
|
|
| mirek wrote on Mon, 21 February 2011 09:45 |
| dolik.rce wrote on Sun, 20 February 2011 17:42 |
| busiek wrote on Sun, 20 February 2011 15:15 | On Ubuntu Natty (development version of Ubuntu) I have problems with linking. For instance, compiling HelloWorld from examples gives in the end:
Linking...
/usr/bin/ld: /home/kubus/upp/out/Draw/GCC.Debug.Debug_full.Gui.Shared/$bl itz.o: undefined reference to symbol 'FT_New_Face'
/usr/bin/ld: note: 'FT_New_Face' is defined in DSO /usr/lib64/libfreetype.so.6 so try adding it to the linker command line
/usr/lib64/libfreetype.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
I installed upp and theide version 3192-maverick-amd64. I found a similar problem somewhere else:
https://bugzilla.redhat.com/show_bug.cgi?id=677692
|
Hi busiek,
First of all, I can fully confirm this problem. Theide itself fails to build on natty both in i386 and amd64, just tried to build it in launchpad.
The problem is that debian (and hence Ubuntu as well) changed its attitude to indirect linking (see here). To make U++ work in natty and new debian we will have to revise the packages to explicitly list all the libraries needed without relaying on the indirect linking.
Hopefully it is just a few libs in uppsrc. I will try to do this ASAP. BTW: We are not the only project affected by this - it broke 1400+ packages in natty 
Also if you are interested in using upp/theide in natty, I can add natty versions to nightly builds as soon as this problem is resolved.
Best regards,
Honza
|
Maybe we could just change that linker option instead?
Mirek
|
It's simply solved by adding freetype lib to Draw and Xrender to CtrlCore. Honza will test it with build for Ubuntu Natty (11.04) in launchpad before commit to svn.
Andrei
[Updated on: Mon, 21 February 2011 11:57] by Moderator Report message to a moderator
|
|
|
|
| Re: Linking problem [message #31323 is a reply to message #31319] |
Mon, 21 February 2011 23:55   |
|
|
| mirek wrote on Mon, 21 February 2011 09:45 | Maybe we could just change that linker option instead?
Mirek
|
IMHO setting the library dependencies correctly is a cleaner solution. And safer, according to Debian developers 
Honza
|
|
|
|
|
|
|
|
| Re: Linking problem [message #31370 is a reply to message #31309] |
Fri, 25 February 2011 19:20   |
|
|
Sorry for late response, I was quite busy in my new job...
I installed Natty in VirtualBox (it finally works again with new version ) and played a bit with the linking. What I found is that it sometimes complains about missing libraries even when they are specified, for example Xrender. It looks like the --start-group/--end-group commands don't work as supposed. If I understood the ld documentation correctly, it should cause ld to scan all the enclosed archives (object files, libs and archives) repeatedly, until all the symbols are resolved. I think there might be some bug in the toolchain itself or in its setting.
The only library that is really missing is freetype, which should be added to Draw.upp exactly as Andrei said above. The rest of the problems can be resolved by simply rearranging the -l options at the end of the command line, which should be quite easy to do in theide code, but I am not sure if that is an universal solution...
I will look into it more deeply during the weekend. It turns out it is not as trivial problem as it seemed at the beginning 
Honza
|
|
|
|
| Re: Linking problem [message #31382 is a reply to message #31309] |
Sat, 26 February 2011 22:33   |
|
|
Hi,
I've got more news... It seems that the linking command line on natty is somehow wrong ordered. It lists libraries BEFORE the archives files with code that uses them, which in conjunction with the wrong behavior of grouping causes most of the trouble. See attached file for details and comparison to the command line produced on my Arch Linux.
So far I have no idea why the order is different on natty than on my system. The builder code is the same on both, and I didn't found any reason (yet) that could make a difference... Any hints? If I reorder the libraries manually (just puting the -l options after .a files from the same package), it links perfectly normal.
Also, the XRender in CtrlCore is not necessary, it just doubles the -lXRender on the command line. That is not harmful of course, just a minor "beauty issue" 
Honza
-
Attachment: linking.txt
(Size: 16.22KB, Downloaded 554 times)
|
|
|
|
|
|
| Re: Linking problem [message #31388 is a reply to message #31382] |
Sun, 27 February 2011 10:46   |
chickenk
Messages: 171 Registered: May 2007 Location: Grenoble, France
|
Experienced Member |
|
|
| dolik.rce wrote on Sat, 26 February 2011 22:33 | Hi,
I've got more news... It seems that the linking command line on natty is somehow wrong ordered. It lists libraries BEFORE the archives files with code that uses them, which in conjunction with the wrong behavior of grouping causes most of the trouble.
|
For information, I got linking problems as well when linking libraries with '-l<library>' linker options instead of '<path/to/library.a>' with my upp-waf build system.
Here is how I solved this (I enclosed static libraries between --whole-archive and --no-whole-archive), the --start-group and --end-group did not work for me either.
regards
Lionel
[Updated on: Sun, 27 February 2011 10:58] Report message to a moderator
|
|
|
|
| Re: Linking problem [message #31389 is a reply to message #31387] |
Sun, 27 February 2011 12:37   |
|
|
| mirek wrote on Sun, 27 February 2011 09:42 | I am a little bit confused - what project is this? Looks like ide, but what is rdppm.o?
And what exactly CLANG means?
|
rdppm.o is as result of compiling jpg plugin files.
CLANG appears because it was compiled with CLANG compiler, on Arch Linux.
Andrei
|
|
|
|
| Re: Linking problem [message #31390 is a reply to message #31387] |
Sun, 27 February 2011 12:57   |
|
|
| mirek wrote on Sun, 27 February 2011 09:42 | I am a little bit confused - what project is this? Looks like ide, but what is rdppm.o?
And what exactly CLANG means?
|
Yes, it is the linking of ide. File rdppm.o comes from plugin/jpeg/lib/rdppm.c, but I have no idea how it got in the linking command line... It should have been inside jpg.a :-/
Sorry for the CLANG, it's a build method using clang as compiler. It shouldn't really matter as it uses GCCBuilder in the very same way as gcc. What could matter is that I compared debug and optimal build in the last post... So to be sure I tried again, this time with equal settings and to my great surprise, now both linking commands look the same (apart from file types) as on natty. I wonder why is there different ordering for debug builds, does it have some important reason?
Anyway, it still holds that putting the libraries (-lxyz) after archives (xyz.a) fixes the problem...
About the --(no-)whole-archive option: It might solve the issue as well, but it could also introduce some overhead by linking unnecessary objects... I'm not 100% sure, but we sure can try that too 
Honza
-
Attachment: arch
(Size: 5.14KB, Downloaded 588 times)
-
Attachment: natty
(Size: 4.88KB, Downloaded 670 times)
|
|
|
|
|
|
|
|
| Re: Linking problem [message #31484 is a reply to message #31458] |
Sat, 05 March 2011 19:42   |
|
|
| mirek wrote on Fri, 04 March 2011 09:59 | Well, not sure it will help, but I have changed the builder so that it now puts .a first, -l last...
|
It seems to work all right now. I tested linking theide both in optimal and debug mode and it links and works.
Now I just have to make similar changes to the makefile so we can build packages for natty...
Honza
|
|
|
|
|
|
| Re: Linking problem [message #31545 is a reply to message #31542] |
Sat, 12 March 2011 21:01   |
|
|
| trader wrote on Sat, 12 March 2011 19:42 | Im using Ubuntu 10.10 Maverick and install U++ from Stable PPA.
I got this same error.
What can I do? Install U++ from Nightly PPA?
|
Hi trader
Yes, the simplest solution is to get newer version from nightly PPA. Alternatively you could download sources and build theide for yourself (it's not difficult, but still a tad more complicated than just using the nightly deb ).
Just out of curiosity: Did this problem appear just recently? After some update perhaps? Because I didn't notice any problem in Maverick, but it is sure possible that the toolchain was updated.
Best regards,
Honza
|
|
|
|
|
|
| Re: Linking problem [message #31564 is a reply to message #31563] |
Mon, 14 March 2011 20:46   |
|
|
| busiek wrote on Mon, 14 March 2011 17:30 | I am using natty nightly builds and the problem persists. My current version is 3274-natty-amd64.
|
Hi busiek,
I'm sorry, but I can't reproduce the problem. Does it happen for all applications, or just some? I used XmlView from uppsrc for testing and linking works fine for me in Debug+Blitz, Optimal and Optimal+Blitz modes. I tested with 3274-natty-i386 so the only possible reason I can see right now is that there are some differences between the toolchains for the two architectures. I will try to setup Natty on amd64 machine tomorrow (I don't have any at home ).
Honza
|
|
|
|
|
|
| Re: Linking problem [message #31573 is a reply to message #31571] |
Tue, 15 March 2011 11:02   |
|
|
Busiek, could you please post the verbose output here? Just turn on "Be verbose" in Setup menu and build the application once more. It will show the complete linking command line, which might be quite helpful.
Also, I found that my computer at work is also i686, so I don't have anywhere to test the amd64 Any volunteers out there? 
Honza
|
|
|
|
| Re: Linking problem [message #31575 is a reply to message #31573] |
Tue, 15 March 2011 14:08   |
busiek
Messages: 71 Registered: February 2011 Location: Poland
|
Member |
|
|
The same with verbose turned on.
----- CtrlLib ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (1 / 9)
cd /home/kubus/upp/uppsrc/CtrlLib
/home/kubus/upp/uppsrc/CtrlLib/XPTheme.dli(1) : blocks BLITZ of /home/kubus/upp/uppsrc/CtrlLib/ChWin32.cpp
----- CtrlCore ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (2 / 9)
cd /home/kubus/upp/uppsrc/CtrlCore
----- PdfDraw ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (3 / 9)
cd /home/kubus/upp/uppsrc/PdfDraw
----- Draw ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (4 / 9)
cd /home/kubus/upp/uppsrc/Draw
----- plugin/bmp ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (5 / 9)
cd /home/kubus/upp/uppsrc/plugin/bmp
----- RichText ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (6 / 9)
cd /home/kubus/upp/uppsrc/RichText
----- Core ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (7 / 9)
cd /home/kubus/upp/uppsrc/Core
/home/kubus/upp/uppsrc/Core/HeapImp.h(1) : blocks BLITZ of /home/kubus/upp/uppsrc/Core/heaputil.cpp
/home/kubus/upp/uppsrc/Core/HeapImp.h(1) : blocks BLITZ of /home/kubus/upp/uppsrc/Core/lheap.cpp
/home/kubus/upp/uppsrc/Core/HeapImp.h(1) : blocks BLITZ of /home/kubus/upp/uppsrc/Core/heap.cpp
/home/kubus/upp/uppsrc/Core/HeapImp.h(1) : blocks BLITZ of /home/kubus/upp/uppsrc/Core/heapdbg.cpp
/home/kubus/upp/uppsrc/Core/CharSet.i(1) : blocks BLITZ of /home/kubus/upp/uppsrc/Core/CharSet.cpp
----- plugin/png ( GUI GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (8 / 9)
cd /home/kubus/upp/uppsrc/plugin/png
----- XmlView ( GUI MAIN GCC DEBUG SHARED DEBUG_FULL BLITZ LINUX POSIX ) (9 / 9)
cd /home/kubus/upp/examples/XmlView
Linking...
g++-4.5 -o "/home/kubus/upp/out/examples/GCC.Debug.Debug_full.Gui.Shared/XmlView" -ggdb -L"/usr/X11R6/lib" -L"/usr/lib64" -Wl,-O,2 "/home/kubus/upp/out/examples/XmlView/GCC.D
ebug.Debug_full.Gui.Main.Shared/main.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/CtrlLib.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.De
bug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/ChWin32.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.Debug.Debug_full.
Gui.Shared/CtrlCore.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Debug_full.Gui.Shar
ed/PdfReport.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Draw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o
" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shared/BmpReg.o" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/h
ome/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/RichImage.o" "/home/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/ku
bus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/OL_Set.o" "/home/kubus/upp/out/examp
les/Core/GCC.Debug.Debug_full.Gui.Shared/heaputil.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/lheap.o" "/home/kubus/upp/out/examples/Core/GCC.Deb
ug.Debug_full.Gui.Shared/heap.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/heapdbg.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.
Shared/CharSet.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngreg.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shar
ed/pnglib.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngupp.o" -Wl,--start-group -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -
lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lX11 -ldl -
lXft -lnotify -ldl -lfontconfig -lpthread -ldl -lz -lpng -Wl,--end-group
/usr/bin/ld: /home/kubus/upp/out/examples/Draw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o: undefined reference to symbol 'FT_New_Face'
/usr/bin/ld: note: 'FT_New_Face' is defined in DSO /usr/lib64/libfreetype.so.6 so try adding it to the linker command line
/usr/lib64/libfreetype.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
g++-4.5 -o "/home/kubus/upp/out/examples/GCC.Debug.Debug_full.Gui.Shared/XmlView" -ggdb -L"/usr/X11R6/lib" -L"/usr/lib64" -Wl,-O,2 "/home/kubus/upp/out/examples/XmlView/GCC.D
ebug.Debug_full.Gui.Main.Shared/main.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/CtrlLib.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.De
bug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/ChWin32.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.Debug.Debug_full.
Gui.Shared/CtrlCore.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Debug_full.Gui.Shar
ed/PdfReport.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Draw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o
" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shared/BmpReg.o" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/h
ome/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/RichImage.o" "/home/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/ku
bus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/OL_Set.o" "/home/kubus/upp/out/examp
les/Core/GCC.Debug.Debug_full.Gui.Shared/heaputil.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/lheap.o" "/home/kubus/upp/out/examples/Core/GCC.Deb
ug.Debug_full.Gui.Shared/heap.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/heapdbg.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.
Shared/CharSet.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngreg.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shar
ed/pnglib.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngupp.o" -Wl,--start-group -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -
lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lX11 -ldl -
lXft -lnotify -ldl -lfontconfig -lpthread -ldl -lz -lpng -Wl,--end-group
Error executing g++-4.5 -o "/home/kubus/upp/out/examples/GCC.Debug.Debug_full.Gui.Shared/XmlView" -ggdb -L"/usr/X11R6/lib" -L"/usr/lib64" -Wl,-O,2 "/home/kubus/upp/out/exampl
es/XmlView/GCC.Debug.Debug_full.Gui.Main.Shared/main.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/CtrlLib.o" "/home/kubus/upp/out/examples/Ctrl
Lib/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/CtrlLib/GCC.Debug.Debug_full.Gui.Shared/ChWin32.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.D
ebug.Debug_full.Gui.Shared/CtrlCore.o" "/home/kubus/upp/out/examples/CtrlCore/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Deb
ug_full.Gui.Shared/PdfReport.o" "/home/kubus/upp/out/examples/PdfDraw/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Draw/GCC.Debug.Debug_full.Gui
.Shared/$blitz.o" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shared/BmpReg.o" "/home/kubus/upp/out/examples/plugin/bmp/GCC.Debug.Debug_full.Gui.Shar
ed/$blitz.o" "/home/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/RichImage.o" "/home/kubus/upp/out/examples/RichText/GCC.Debug.Debug_full.Gui.Shared/$bl
itz.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/$blitz.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/OL_Set.o" "/home/kub
us/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/heaputil.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/lheap.o" "/home/kubus/upp/out/examp
les/Core/GCC.Debug.Debug_full.Gui.Shared/heap.o" "/home/kubus/upp/out/examples/Core/GCC.Debug.Debug_full.Gui.Shared/heapdbg.o" "/home/kubus/upp/out/examples/Core/GCC.Debug
.Debug_full.Gui.Shared/CharSet.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngreg.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Deb
ug_full.Gui.Shared/pnglib.o" "/home/kubus/upp/out/examples/plugin/png/GCC.Debug.Debug_full.Gui.Shared/pngupp.o" -Wl,--start-group -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -l
gdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -lglib-
2.0 -lX11 -ldl -lXft -lnotify -ldl -lfontconfig -lpthread -ldl -lz -lpng -Wl,--end-group
Exitcode: 1
There were errors. (0:05.42)
|
|
|
|
| Re: Linking problem [message #31576 is a reply to message #31575] |
Tue, 15 March 2011 15:25   |
chickenk
Messages: 171 Registered: May 2007 Location: Grenoble, France
|
Experienced Member |
|
|
Indeed, '-lfreetype' is not appended to your linker command-line and with the new DSO policy in Ubuntu, this cannot work.
After looking at CtrlCore.upp, it seems we don't explicitely insert freetype for linux platforms (I suppose we expect it to be injected by another dependency, but the new policy avoids just that).
IMHO it's a bug in CtrlCore.upp and you should try by replacing the line library(LINUX) "X11 Xrender"; by the line library(LINUX) "X11 Xrender freetype";
and tell us if it works better...
But the main problem is that we might have plenty of there DSO issues and it should be time getting rid of them. I bet plenty of work on dependencies is needed.
My 2 cents, I'm not using Ubuntu anyway.
EDIT: my bad, freetype lib was added to Draw/Draw.upp at revision r3239 and since CtrlCore depends on Draw, it should work perfectly. Can you check that Draw/Draw.upp includes the line below? library(LINUX) "dl freetype";
Lionel
[Updated on: Tue, 15 March 2011 15:35] Report message to a moderator
|
|
|
|
| Re: Linking problem [message #31577 is a reply to message #31576] |
Tue, 15 March 2011 16:55   |
busiek
Messages: 71 Registered: February 2011 Location: Poland
|
Member |
|
|
| chickenk wrote on Tue, 15 March 2011 15:25 |
EDIT: my bad, freetype lib was added to Draw/Draw.upp at revision r3239 and since CtrlCore depends on Draw, it should work perfectly. Can you check that Draw/Draw.upp includes the line below? library(LINUX) "dl freetype";
Lionel
|
No, in ~/upp/uppsrc/Draw/Draw.upp there is
After changing it as you suggested, compilation succeeded.
[Updated on: Tue, 15 March 2011 16:58] Report message to a moderator
|
|
|
|
| Re: Linking problem [message #31578 is a reply to message #31309] |
Tue, 15 March 2011 17:12   |
|
|
Yes, that is the correct solution 
Here is a small explanation as for why happened: As of now if you update U++ through your package manager, only the sources in /usr/share/upp are updated. Your local copy in your /home stays the same and you have to manually copy the /usr/share/upp into your home directory after each update.
So even though you were using theide in version 3274, the sources were actually older and didn't contain the changes in Draw.upp where freetype was added.
I know that this is quite stupid behavior and I reported it almost a year ago and even proposed and prepared a solution. But nobody really complained so far and nobody was interested in the fix, so I am the only one using it right now... I hope this will drag some attention to it again 
Honza
|
|
|
|
|
|
| Re: Linking problem [message #31610 is a reply to message #31602] |
Thu, 17 March 2011 11:35   |
|
|
| trader wrote on Wed, 16 March 2011 22:28 | Honza, I install U++ recently and I start get this error.
I will install Nightly PPA, but I prefer Stable.
Tks
|
Note that the most stable version of U++ is usualy the latest The stable releases only point IMHO is that they are not updated that often.
If you want to just surpass this one problem, you can leave the stable PPA set up on your system and just manually install the packages from nightly builds. Their version numbers are higher, so they will superseed the last stable, but as soon as next stable version comes out it will be installed and you are back into the stable releases automatically The nightly debs can be downloaded directly e.g. from here: http://ppa.launchpad.net/dolik-rce/upp-nightly/ubuntu/pool/m ain/u/upp/.
Honza
|
|
|
|
|
|
Goto Forum:
Current Time: Tue Sep 15 09:58:16 GMT+2 2026
Total time taken to generate the page: 0.01214 seconds
|