Comments (12)
Yes, thats the one demo that still needs to be updated to Gtk3.
from gtkd.
ok i will disable the build check to allow a new fedora update thanks
from gtkd.
git pull
+ make -j4 test prefix=/home/builder/rpmbuild/BUILDROOT/gtkd-2.0.0-28.20120815git9ae9181.fc17.x86_64/usr libdir=lib64
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestStock.d -ofdemos/gtkD/TestWindow/TestStock.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestTreeView1.d -ofdemos/gtkD/TestWindow/TestTreeView1.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestTreeView.d -ofdemos/gtkD/TestWindow/TestTreeView.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestScales.d -ofdemos/gtkD/TestWindow/TestScales.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestIdle.d -ofdemos/gtkD/TestWindow/TestIdle.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestEntries.d -ofdemos/gtkD/TestWindow/TestEntries.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestWindow.d -ofdemos/gtkD/TestWindow/TestWindow.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestText.d -ofdemos/gtkD/TestWindow/TestText.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestImage.d -ofdemos/gtkD/TestWindow/TestImage.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TEditableCells.d -ofdemos/gtkD/TestWindow/TEditableCells.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TTextView.d -ofdemos/gtkD/TestWindow/TTextView.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestDrawingArea.d -ofdemos/gtkD/TestWindow/TestDrawingArea.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestThemes.d -ofdemos/gtkD/TestWindow/TestThemes.o
ldc2 -O -m64 -Isrc -Idemos/gtkD/TestWindow -c demos/gtkD/TestWindow/TestAspectFrame.d -ofdemos/gtkD/TestWindow/TestAspectFrame.o
ldc2 demos/gtkD/TestWindow/TestStock.o demos/gtkD/TestWindow/TestTreeView1.o demos/gtkD/TestWindow/TestTreeView.o demos/gtkD/TestWindow/TestScales.o demos/gtkD/TestWindow/TestIdle.o demos/gtkD/TestWindow/TestEntries.o demos/gtkD/TestWindow/TestWindow.o demos/gtkD/TestWindow/TestText.o demos/gtkD/TestWindow/TestImage.o demos/gtkD/TestWindow/TEditableCells.o demos/gtkD/TestWindow/TTextView.o demos/gtkD/TestWindow/TestDrawingArea.o demos/gtkD/TestWindow/TestThemes.o demos/gtkD/TestWindow/TestAspectFrame.o -ofTestWindow -L-L. -L-lgtkd -L-ldl -m64 -L-rpath=./
demos/gtkD/TestWindow/TestStock.o: In function `_D9TestStock9TestStock6__ctorMFZC9TestStock9TestStock':
TestStock:(.text+0x9b): undefined reference to `_D3gdk5Color5Color6__ctorMFhhhZC3gdk5Color5Color'
demos/gtkD/TestWindow/TestIdle.o: In function `_D8TestIdle8TestIdle11TestDrawing9onRealizeMFC3gtk6Widget6WidgetZv':
TestIdle:(.text+0x5a1): undefined reference to `_D3gdk5Cairo13createContextFC3gdk6Window6WindowZC5cairo7Context7Context'
demos/gtkD/TestWindow/TestIdle.o: In function `_D8TestIdle8TestIdle11TestDrawing6__ctorMFZC8TestIdle8TestIdle11TestDrawing':
TestIdle:(.text+0xda3): undefined reference to `_D3gdk5Color5Color6__ctorMFhhhZC3gdk5Color5Color'
TestIdle:(.text+0xdd5): undefined reference to `_D3gdk5Color5Color6__ctorMFhhhZC3gdk5Color5Color'
collect2: error: ld returned 1 exit status
from gtkd.
Did you rebuild the libraries?
All the undefined references are to recently added functions.
from gtkd.
yes of course
i build each time from start and in a chroot
# debug info seem not works with D compiler
%global snapdate 20120815
%global gtkd_revision 9ae9181
%global alphatag %{snapdate}git%{gtkd_revision}
%global debug_package %{nil}
# The source for this package was pulled from upstream's subversion (git).
# Use the following commands to generate the tarball:
# git clone git://github.com/gtkd-developers/GtkD.git
# cd GtkD
# git co Gtk-3.x
# git rev-parse --short HEAD -> for git_revision
# git checkout %%{gtkd_revision}
# git archive --prefix=gtkd-%%{alphatag}/ HEAD --format=tar | xz > ../gtkd-%%{alphatag}.tar.xz
Name: gtkd
Version: 2.0.0
Release: 28.%{alphatag}%{?dist}
Summary: D binding and OO wrapper of GTK+
License: LGPLv3+ with exceptions
URL: http://www.dsource.org/projects/derelict/
Source0: %{name}-%{alphatag}.tar.xz
BuildRequires: ldc, ldc-phobos-devel, ldc-druntime-devel, gtk2-devel
# Explicit require since gtkd use dlopen internally so rpm can't detect this.
Requires: atk, gtk2, gdk-pixbuf2, pango, cairo, gdk-pixbuf2, libglade2
Requires: mesa-libGL, mesa-libGLU, gtksourceview2
Requires: gstreamer, gstreamer-plugins-base
%description
GTK+ is a highly usable, feature rich toolkit for creating graphical user
interfaces which boasts cross platform compatibility and an easy to use API.
%description -l fr
GTK+ est très utilisable, cet outil contient de nombreuses fonctionnalités
permettant de créer des interfaces graphiques multi-plateforme.
De plus, gtkd fournit une API facile à utiliser.
%package devel
Summary: Support for developing gtkd application
Group: Development/Tools
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The gtkd-devel package contains header files for developing gtkd
applications.
%description devel -l fr
Le paquet gtkd-devel contient les fichiers d'entêtes pour développer
des applications utilisant gtkd.
%package geany-tags
Summary: Support for enable autocompletion in geany
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
BuildRequires: geany
Requires: geany
%description geany-tags
Enable autocompletion for gtkd library in geany (IDE)
%description -l fr geany-tags
Active l'autocompletion pour pour la bibliothèque gtkd dans geany (IDE)
%prep
%setup -q -n %{name}-%{alphatag}
# temp geany config directory for allow geany to generate tags
mkdir geany_config
%build
make %{?_smp_mflags} -f ./GNUmakefile shared-libs DC=ldc2 CC=gcc libdir=%{?_lib} DCFLAGS="%{_d_optflags}"
# generate geany tags
geany -c geany_config -g gtkd.d.tags $(find src* -name "*.d")
# Need to be update to gtk3
%check
make %{?_smp_mflags} test prefix=%{buildroot}%{_prefix} libdir=%{?_lib}
%install
make %{?_smp_mflags} install-shared install-headers prefix=%{buildroot}%{_prefix} libdir=%{?_lib}
# fix right to lib
chmod 755 %{buildroot}%{_libdir}/libgtkd*.so.2.0
# geany tags
mkdir -p %{buildroot}/%{_datadir}/geany/tags/
install -m0644 gtkd.d.tags %{buildroot}/%{_datadir}/geany/tags/
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc AUTHORS COPYING README
#%{_libdir}/libgtkdgl.so.2.0.0 # gtk GL not yes ported to gtk3
#%{_libdir}/libgtkdgl.so.2.0 # same
%{_libdir}/libgtkd.so.2.0.0
%{_libdir}/libgtkd.so.2.0
%{_libdir}/libgtkdsv.so.2.0.0
%{_libdir}/libgtkdsv.so.2.0
%files devel
%{_d_includedir}/atk
%{_d_includedir}/cairo
%{_d_includedir}/gdk
%{_d_includedir}/gdkpixbuf
%{_d_includedir}/gio
#%{_d_includedir}/glade # deprecated for gtk3.x
#%{_d_includedir}/glgdk # gtk GL not yes ported to gtk3
#%{_d_includedir}/glgtk # same
%{_d_includedir}/glib
%{_d_includedir}/gobject
%{_d_includedir}/gsv
%{_d_includedir}/gsvc
%{_d_includedir}/gthread
%{_d_includedir}/gtk
%{_d_includedir}/gtkc
#%{_d_includedir}/gtkglc # gtk GL not yes ported to gtk3
%{_d_includedir}/pango
#%{_libdir}/libgtkdgl.so # gtk GL not yes ported to gtk3
%{_libdir}/libgtkd.so
%{_libdir}/libgtkdsv.so
%files geany-tags
%{_datadir}/geany/tags/gtkd.d.tags
%changelog
* Sun Aug 12 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-28.20120603gitcb35d25
- temprorally disable check section
* Sun Aug 12 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-27.20120603gitcb35d25
- Update to lastest revision cb35d25
* Wed Jun 06 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-26.20120530gitf45bb5b
- update to latest revision
- build with dmdfe 2.059
* Sat Mar 17 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-25.20120227git0c468d2
- fix macro in comment
* Thu Mar 15 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-24.20120227git0c468d2
- latest ldc fix soname issue, the use ldc instead of gcc for this
* Mon Feb 27 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-23.20120227git0c468d2
- add libglade2 as require
- update to latest revision 0c468d2
* Thu Feb 23 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-22.20120219git2cfd194
- Fix license
* Mon Feb 20 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-21.20120219git2cfd194
- source move to github
- fix license
- update to latest git rev
* Tue Feb 14 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-20.20120208svn933
- Update to latest svn rev 933
* Sun Feb 05 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-19.20120205svn932
- Update to latest svn rev 932
* Sat Feb 04 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-18.20120204svn928
- Update to latest svn rev 928
* Fri Feb 03 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-17.20120201svn927
- update to rev svn 927
* Tue Jan 31 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-16.20120130svn924
- update to latest svn rev 924
* Sat Jan 28 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-15.20120113svn920
- Enable shared lib
* Thu Jan 19 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-14.20120113svn920
- Remove %%file devel section
* Thu Jan 19 2012 Jonathan MERCIER <bioinfornatics at gmail.com> - 2.0.0-13.20120113svn920
- Do not build as shared lib do not works yet
- Remove 'it is a' from Summary
- gtkd load shared lib at runtime with dlopen then add corresponding requires
- Change gtkd code source for use versioned lib
* Mon Jan 16 2012 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-12.20120113svn920
- remove require devel from non devel (sub)package
- remove require gtk2-devel from -devel
- apply %%post and %%postun on main package
* Fri Jan 13 2012 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-11.20120113svn920
- update to latest release who fix a problem around soname
* Fri Jan 13 2012 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-10.20120113svn919
- update to latest release who he apply my patch
* Tue Jan 10 2012 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-9.20120111svn915
- update to latest release
- fix fsf adress
- fix soname
- add devel package
- little change in french description
- add geany tag and devhelp supackage to noarch
* Sun Jan 8 2012 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-8.201110243svn906
- prefix python script by python command
* Sun Dec 11 2011 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-7.201110243svn906
- remove %%defattr and Group section
- generate devhelp book in %%build section
* Fri Dec 9 2011 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-6.201110243svn906
- Add doc for devhelp
- Add tag for geany
* Mon Oct 24 2011 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-5.201110243svn906
- Update to release 906
* Mon Sep 19 2011 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-4.20110915svn897
- Update to release 897
* Mon Aug 02 2010 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-3.20100720svn797
- fix gtkd spec
* Mon Aug 02 2010 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-2.20100720svn797
- Update to release 797
* Sun Jul 04 2010 Jonathan MERCIER <bioinfornatics at gmail.com> 2.0.0-1.20100407svn796
- Initial release
from gtkd.
It looks like the lib and the source aren't in sync.
Could you check if the symbol is indeed missing from the library:
nm -D libgtkd.so | grep _D3gdk5Color5Color6__ctorMFhhhZC3gdk5Color5Color
Also, you might want to change the URL in the spec file ;)
from gtkd.
oops url fixed, this command return nothing
from gtkd.
Can you check if your copy of src/gdk/Color.d line: 121 contains the following constructor?
https://github.com/gtkd-developers/GtkD/blob/Gtk-3.x/src/gdk/Color.d#L121
from gtkd.
it seem: http://fpaste.org/Ivwf/
you have any check problem ?
from gtkd.
I don't have any problems building the demo with ldc2.
It looks like either ld is picking up an older version of the library, or ldc/ld are not putting the symbol in the resulting library.
The first option looks more plausible because ld is only complaining about three symbols that where added recently, but that would mean you have an other copy of the gtkd lib in your chroot, i don't know exactly how your chroot is set up but at least a few libs (like libldl.so) are coming from the original root, if you are using mount --bind to get a copy of /usr/lib in your chroot it might also contain the gtkd lib ?
If ldc or ld are messing up the library, it might be some obscure bug. in that case can you check if the object file contains the symbol ?
dumpobj src/gdk/Color.pic.o | grep _D3gdk5Color5Color6__ctorMFhhhZC3gdk5Color5Color
from gtkd.
oh yes i think ld use installed gtkd an not this one thanks i will try to uninstall and retry
from gtkd.
yes after uninstall gtkd
i am able to build the demo. As ld search in first into his standard path and after the current path now and in future if you have already gtkd
installed this problem could be appear again.
thanks a lot
from gtkd.
Related Issues (20)
- Unable to implement CellRenderer.render with ImplementClass HOT 2
- [QUESTION] MainWindow or ApplicationWindow? HOT 4
- Add Support for Composite Templates HOT 2
- Status of custom GObjects HOT 4
- Wrong code format in Widget.d
- Add Gda bindings
- Undefined reference to _D3std6string9toStringzFNaNbNeMNkAyaZPya with ldc2 HOT 11
- bindings for LibAdwaita HOT 3
- Memory allocation failed when compiling with gdc HOT 1
- ListBoxItem toggle_refs_notify: assertion failed HOT 1
- How to Wrap GObject Introspection-based libraries for begginers HOT 4
- cairo win32 support
- New release? HOT 2
- wrapper for Dialog.getHeaderBar returns Widget instead of HeaderBar HOT 1
- Compile failed on Linux with gdc
- GTK4 HOT 2
- Unicode.utf8Validate issue ? HOT 5
- Gtk4 fails loading some icons HOT 1
- Create new tag/release for 3.11
- Need Gtk+ runtime in zip format
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gtkd.