Genete and ulrik: If you tell me the steps I have to do, I can try to build it on an Intel based Mac.
Hi!
I am about to write how I manage to build Synfig against X11 in OSX at the wiki but I have not had the time yet to do it, but I have made a simple text doc for my self and I am willing to share it here and I hope you can follow it , if there will be problems Iâm willing to answer your questions if I can, Iâm not familiar with data programming I think Iâm just plain lucky to have succesfully managed to build Synfig
This is the doc:
I wish you good luck and please report here how it goes.
Build environment for building against X11
Since these instructions assume one is using MacPorts, make sure the following environment variables are set accordingly:
export PATH="/opt/local/bin:$PATH"
export ACLOCAL_FLAGS="-I /opt/local/share/aclocal"
export PKG_CONFIG_PATH="/opt/local/lib/pkgconfig"
I shall assume you only have XCode and MacPorts installed. In order to get subversion and git, you should be able to type the following into the terminal:
sudo port install git-core
sudo port install subversion
Assuming MacPorts installed subversion and git correctly, youâll now need to grab and compile a copy of jhbuild from the gnome repository, which can be done like so:
svn co svn.gnome.org/svn/jhbuild/trunk jhbuild
cd jhbuild && make -f Makefile.plain install
Building GTK+
Download, from here:
downloads.sourceforge.net/source ⌠d-setup.sh
gtk-osx-setup.sh to your home directory and run it:
$ sh gtk-osx-build-setup.sh
It will install jhbuild in ~/Source and create ~/bin/jhbuild. It will also install ~/.jhbuildrc and ~/.jhbuildrc-custom and will copy the current gtk-osx modules into ~/Source/jhbuild/modulesets.
Note: jhbuild requires Python 2.5 to unpack tar files, but Tiger provides Python 2.3. We provide Python 2.5 in meta-gtk-osx-bootstrap, but that doesnât help for running jhbuild because the non-jhbuild shell doesnât ordinarily see your gtk installation. You can define an alias to get around this problem:
$ alias jhbuild=âPATH=gtk-prefix/bin:$PATH jhbuildâ
Obviously you should substitute the actual path of your gtk installation for gtk-prefix. If you add it to your .bashrc or .bash_profile you wonât need to worry about it.
Now do
$ jhbuild bootstrap
In order to compile synfig for X11, you will need to install gtkmm and libxml++ via MacPorts (or Fink). This can be done as follows:
sudo port install gtkmm libxmlxx2
This will also install all the other dependencies (such as X11), so it make take some time to compile.
You need to set PKG_CONFIG_PATH so that the ETL and synfig-core header files and libraries can be found:
export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
For some unknown reason compiling ETL, synfig-core and synfig-studio doesnât work properly when using MacPorts auto* tools. However, it does work with the bootstrap toolset used to compile Imendioâs native GTK port. So it is suggested that you follow the Boot strapping section up to and including the âjhbuild bootstrapâ line and make sure â/opt/gtk/binâ is first in your $PATH in order to properly compile etl, synfig-core and synfig-studio.
You should now be able to follow the Build instructions to compile ETL, synfig-core, and synfig-studio. The only thing different you should do is add ââprefix=/opt/local --exec-prefix=/opt/localâ to the â./configureâ options when building each package.
Assuming you manage to build it correctly, you should now be able to type the following in order for Synfig to pop up on your desktop:
synfigstudio
Follow the instructions to build ETL, Synfig core and Synfig studio here:
synfig.com/wiki/Build_instructions
after installing all dependent libraries that the Synfig package requires build all packages and see to that you have /opt/synfig in your path.
Building all packages:
cd synfig/ETL
export PKG_CONFIG_PATH=/opt/synfig/lib/pkgconfig
export PATH=/opt/synfig/bin:$PATH
autoreconf --install --force
./configure --prefix=/opt/synfig
sudo make install
cd synfig/synfig-core
glibtoolize --ltdl --copy --force
export PKG_CONFIG_PATH=/opt/synfig/lib/pkgconfig
export PATH=/opt/synfig/bin:$PATH
autoreconf --install --force
./configure --prefix=/opt/synfig
make
sudo make install
cd synfig/synfig-studio
export PKG_CONFIG_PATH=/opt/synfig/lib/pkgconfig
export PATH=/opt/synfig/bin:$PATH
autoreconf --install --force
./configure --prefix=/opt/synfig
make
sudo make install
Much of this text is taken from:
synfig.com/wiki/Building_On_Mac_OS_X
However there are some differencies and it is mainly about the jhbuild matter since the old link to the .jhbuildrc file is not valid anymore.
Thank you very much. I tried some months ago following the instructions on the wiki, but I couldnât build it. I had a lot of problems (native and using X11). I have Macports installed and the last xcode tools, so Iâm going to try again with your instructions. I will tell you about.
Thanks again.
Rafael.
The first problem: I had an old version of git-core and subversion. I solved this updating them with Porticus.
Second problem:
You write: âObviously you should substitute the actual path of your gtk installation for gtk-prefix. If you add it to your .bashrc or .bash_profile you wonât need to worry about itâ.
Sorry: How can I do that?
Rafael.
you can use a text editor to open the .bashrc file located in your user root, if you dont have that file edit the .profile file instead, enter the path and save it. You have to have a texteditor that can find invisible files, the dot in front of the files name indicates that itâs hidden. A good text editor that is capable of finding hidden files is âTextwranglerâ and itâs free.
I donât have the .bashrc file. This is the .profile file:
What must I write and in which line?
Thanks.
I donât know if it is important: I have installed Porticus.
Rafael.
I donât have the bashrc file either, this is my .profile:
MacPorts Installer addition on 2009-01-25_at_14:22:05: adding an appropriate PATH variable for use with MacPorts.
export PATH=/opt/local/bin:/Users/ulrik/bin:/opt/synfig/bin:/Users/ulrik/sbin:/opt/local/sbin:$PATH
Finished adapting your PATH environment variable for use with MacPorts.
MacPorts Installer addition on 2009-01-25_at_14:22:05: adding an appropriate MANPATH variable for use with MacPorts.
export MANPATH=/opt/local/share/man:$MANPATH
Finished adapting your MANPATH environment variable for use with MacPorts.
test -r /sw/bin/init.sh && . /sw/bin/init.sh
export PATH=Users/ulrik/bin:$PATH
The âexport PATHâ line is the one you should edit, this is my line:
export PATH=/opt/local/bin:/Users/ulrik/bin:/opt/synfig/bin:/Users/ulrik/sbin:/opt/local/sbin:$PATH
Your âexport PATHâ line does not include your user paths, I suggest you to include â/Users/rafaymaria/binâ and also â/opt/synfig/binâ I think that will do it
Bad luck:
Any idea?
As soon as you close the terminal window, all temporary commands, paths etc is lost, I think that is why it canât find the jhbuild command, if you run the jhbuild bootstrap directly after running the jhbuld script it should work (that is what I usually do when I have to rebuild the gtk via jhbuild) when you have succeed with the jhbuild bootstrap cammand it is not nessecairy to run it again.
btw, do you have /Users/yourname/bin in your path? if you have have , terminal should find the jhbuild script I think, could you please check that you have a file called âjhbuildâ here: /Users/yourname/bin?
your âexport PATHâ line is a bit strange, it should be:
export PATH=/opt/local/bin:/Users/rafaymaria/bin:/opt/synfig/bin:/Users/rafaymaria/sbin:/opt/local/sbin:$PATH
there are some wrong typing there, donât forget the sign â:â
Successfull.
Now I have downloaded:
I think I must untar them before continue. But, where can I put them? In rafaymaria directory?
Great
I have them like this:
/User/myname/synfig/here I have all folders (ETL, synfig-core and synfig-studio)
make a new folder here /Users/yourname/, name it âsynfigâ, drop you downloaded files into that folder and unpack them, then you should have at least, âETLâ, âsynfig-coreâ and âsynfig-studioâ
Ops! another problem: When I try to install gtkmm, I have:
So, I try with Porticus, and I have:
How can I repair that? Perhaps can I continue without this step?
HmmmmâŚI remember I had the same problem when I first installed gtkmm, if I rember correctly what I did was to install all the dependencies one by one, you got the message from teminal âThe following dependencies failed to buildâ I build all the libriares followed by that statement, one by one. So the first you should do is to try to install them, I think I had problems along the way, some got installed with success, some failed, but when I had tried to build all libraries, I started all over again and tried to install the ones that failed. I remember I started with ones last in the list because it worked the best, donât ask me whyâŚ
Keep posted here and I will read your development as soon as I can.
Good luck!!
Thanks.
At this point, I thought that there was a solution, because I read âPlease perform âport clean libpngâ or specify the force optionâ. As I canât specify this option (because I donât know how to do it), I tried to clean it. I tried with porticus, but I didnât find how to clean. I wrote âclean libpngâ on the terminal, but I had the same error. So, I look for it in Internet. I found it as a Fink package. I tried FinkCommander, but it didnât install it. After a long time, I tried writing this: sudo port clean libpng, and it worked. Then I wrote sudo port install gtkmm libxmlxx2, and I had another error, so I wrote sudo port clean gtkmm. It worked too. After that, I wrote sudo port install gtkmm libxmlxx2 and it begin to install:
It take a lot of time. After some minutes I had another error. This time I had to write sudo port clean cairomm.
Then, I continued by writing sudo port install libxmlxx2. It worked fine. After that, I wrote sudo port install cairomm.
Now it is 1:43 in Spain and I go to bed. I donât know if the next days Iâll be able to continue. If I can, Iâll tell you the next steps. If not, Iâll continue next tuesday. Here it is the pdf file of my terminal. Perhaps it is interesting for you.
installing gtk.zip (435 KB)
Hi, ulrik. Here am I.
ETL installed succesfully.
A new problem: when I write âglibtoolize --ltdl --copy --forceâ I have:
I try to run aclocal, but it doesnât work. Iâm stopped again. I have this version of X11:(I donât know if it is important)
By the way, you wrote âsynfig-coreâ and the folder I have is âsynfigâ (downloaded as synfig-0.62.00-RC1). Have I a wrong folder?
Here is the pdf of this night.
installing ETL and synfig.zip (25.1 KB)
How do your folder structure look like?
this is how mine look like: