You are not logged in.
Pages: 1
Topic closed
Hello! I made a not-yet-working PKGBUILD for chromium-browser, and this page is a place to discuss its issues.
Let me mention why this PKGBUILD is different: it seems all the others download binary packages from other places and modify them so they work on Arch. That seems unnecessary for an open source program, and fragile. On to the issues:
First, chrome doesn't build--it fails to link the "chrome" executable. It looks to me like it's not being linked properly to webkit.
There is no "make install" target, so the relevant files must be placed in $pkgdir by hand.
Because of the above issues, I can't find where exactly the executables and resources need to go to find each other.
The code is a little different for 32-bit and 64-bit installations. Specifically, Google says that to compile this on 64 bit, we need to pull newest unstable version of v8, the javascript library. It's possible that the build currently does work for 32-bit users, but I suspect not.
I think the first course of action is investigating the linking problem. The symbol that isn't found is "findEntity(char const*, unsigned int)"
Last edited by piojo (2009-08-20 15:20:45)
Offline
Another issue is that depot_tools-svn (a dependency) is broken. I posted a fixed PKGBUILD on the aur page, but the md5sums will break every time someone makes a commit to depot_tools. I don't know how to fix this--I think makepkg should allow missing md5sums for this reason.
Offline
piojo did you look at those patches from fedora that i give you? there you can look at the spec to see what you need to copy in pkgdir.
link: http://spot.fedorapeople.org/chromium/
Last edited by wonder (2009-08-20 15:31:58)
Give what you have. To someone, it may be better than you dare to think.
Offline
piojo did you look at those patches from fedora that i give you? there you can look at the spec to see what you need to copy in pkgdir.
Yes, thank you. That .spec will be really useful. As for the patches, I'll see whether they're necessary after I get chromium to finish building. (The patches won't help with the particular build issue I'm having, because they involve compiling against locally installed libraries, which seem to be found fine, so far.)
Offline
I had this annoying message: Argument list too long
but I didn't really understand how to solve this problem hmm
Offline
I had this annoying message: Argument list too long
Solve it by building in a shorter directory. "/tmp/chrome" might be short enough, but "/tmp/c" definitely works. If you don't have enough space in /tmp, bind-mount your chrome package directory to /tmp/c:
mkdir /tmp/c
sudo mount --bind /home/flamelab/packages/chrome-browser/ /tmp/c/
cd /tmp/c; makepkgThis alone won't be enough to make the compilation finish, though. There's a link problem toward the end, and I'm poking at that, trying to fix it...
Offline
Perhaps ....
mount -o remount,size=3G /This will give you max tmpfs size and allow swap if needed.
Max size isn't necessarily 3G but whatever your ram size is will be its useful range.
Prediction...This year will be a very odd year!
Hard work does not kill people but why risk it: Charlie Mccarthy
A man is not complete until he is married..then..he is finished.
When ALL is lost, what can be found? Even bytes get lonely for a little bit! X-ray confirms Iam spineless!
Offline
flamelab wrote:I had this annoying message: Argument list too long
Solve it by building in a shorter directory. "/tmp/chrome" might be short enough, but "/tmp/c" definitely works. If you don't have enough space in /tmp, bind-mount your chrome package directory to /tmp/c:
mkdir /tmp/c sudo mount --bind /home/flamelab/packages/chrome-browser/ /tmp/c/ cd /tmp/c; makepkgThis alone won't be enough to make the compilation finish, though. There's a link problem toward the end, and I'm poking at that, trying to fix it...
Thank you, I'll try it.
But...
Isn't that error very ...stupid ? Is it a bash error ? A "make" error ?
Offline
Isn't that error very ...stupid ? Is it a bash error ? A "make" error ?
It's more of a Linux error. There's a maximum argument length that the "exec" functions can be called with. This seems to be defined in /usr/src/linux-2.6.30-ARCH/include/linux/limits.h (my source is http://www.in-ulm.de/~mascheck/various/argmax/ , but I checked it myself). It's funny, because I remember discussion on the linux kernel mailing list about removing this limit entirely, and having the arg length be limited by available memory.
Note that this space limit also applies to environment variables (as limits.h seems to imply), so if need to save even more space, you can try "env - PATH=$PATH USER=$USER HOME=$HOME make -r chrome" instead of just "make -r chrome" (http://www.linuxquestions.org/questions/linux-software-2/execvp-binsh-argument-list-too-long-compilation-error-723076/ ). I didn't need to do that, though.
When you get down to it, though, I think it's really an error in chromium's build system. This just shouldn't happen, because practically every linux script writer knows that you can't have infinitely long arguments.
Last edited by piojo (2009-08-20 23:07:43)
Offline
Also, I found the "final" error being discussed here:
http://groups.google.com/group/chromium … e42661344f
If everything else goes right, this linker error will still stop the chrome executable from being produced on arch-linux. I guess this is why every other packager just grabbed a binary package from another distro. I'll be watching this thread and waiting for a solution. I can't figure out why the link fails, because it really looks like it should succeed, from the debugging I've done.
Offline
this works for me on 64:
PKGBUILD to make the 64-bit version (NATIVE!) work. Note that's it's
JUST the 64-bit version.
# Contributor: Christer Edwards <christer@zelut.org>
# PKGBUILD FAQ: http://blog.zelut.org/chromium-browser-faq-arch/
pkgname=chromium-browser
pkgver=4.0.203.0~svn20090818r23670
pkgrel=1
pkgdesc="Chromium is an open-source browser project that aims to
build a safer, faster, and more stable way for all Internet users to
experience the web."
url="http://code.google.com/chromium/"
if [ "${CARCH}" = 'x86_64' ]; then
depends=('atk' 'gtk2' 'nss' 'gconf' 'cairo' 'freetype2' 'dbus-glib'
'libjpeg6')
elif [ "${CARCH}" = 'i686' ]; then
depends=('atk' 'gtk2' 'nss' 'gconf' 'cairo' 'freetype2' 'dbus-glib')
fi
arch=('i686' 'x86_64')
license=('BSD')
conflicts=('chromium-snapshot')
source=(http://ppa.launchpad.net/chromium-daily/ppa/ubuntu/pool/main/c/chromium-browser/chromium-browser_${pkgver}-0ubuntu1~ucd1_amd64.deb)
md5sums=('9854278fd5211ec757cfaac2dc04af8f')
build() {
cd $srcdir
bsdtar xf "chromium-browser_${pkgver}-0ubuntu1~ucd1_amd64.deb" ||
return 1
bsdtar xf data.tar.gz -C $pkgdir || return 1
}Offline
this works for me on 64:
...
I see--thanks. That's not a source package, though, that's installing a .deb from ubuntu
. Anyway, I appreciate it, but I'm not ready to give up on compiling from source, yet. (This problem may be way out of my league, but I feel stubborn...)
Thanks, anyway.
Offline
Also, I found the "final" error being discussed here:
http://groups.google.com/group/chromium … e42661344f
If everything else goes right, this linker error will still stop the chrome executable from being produced on arch-linux. I guess this is why every other packager just grabbed a binary package from another distro. I'll be watching this thread and waiting for a solution. I can't figure out why the link fails, because it really looks like it should succeed, from the debugging I've done.
From all the investigation i have done the problem seems to be something to do with gperf, i am wondering now if this is a compiler flag we are missing although i've not really been sure where to start. I have tried to build nightlys of webkit as well however they are linked against the betas of libsoup and i don't really have anywhere to test these on. If anyone is feeling brave that may be a good place to explore this problem.
Offline
@piojo here is a build from gentoo: http://forums.gentoo.org/viewtopic-p-59 … ml#5942129
Give what you have. To someone, it may be better than you dare to think.
Offline
I also noticed that chromium-browser-svn in AUR now compiles x86_64 (or is supposed to, haven't tried yet).
Setting Up a Scripting Environment | Proud donor to wikipedia - link
Offline
Apparently, the package compiles if BUILDTYPE is set to "Release". That result isn't very satisfying... I don't really know any more than I did before. But the package now works, please test it if you are interested. http://aur.archlinux.org/packages.php?ID=29440
You will need 5GB of disk space and (probably) a few hours to build it (sorry).
Offline
thanks piojo
Give what you have. To someone, it may be better than you dare to think.
Offline
Yeah, thanks. I'll get to trying this later.
Setting Up a Scripting Environment | Proud donor to wikipedia - link
Offline
i see on fedora spec that there is chrome-sanbox but we are not having this. i think is a good feature that needs to be added. that sandbox is on http://code.google.com/p/chromium/wiki/LinuxPackaging too. maybe you forgot about it.
Give what you have. To someone, it may be better than you dare to think.
Offline
Used your aur URL to download the tarball.
When running the PKGBUILD, depot_tools-svn is missing. Aborted.
Observed the notes in the aur such that depot_tools is correct and should be included in the PKGBUILD. What is the situation now regarding this item?
Prediction...This year will be a very odd year!
Hard work does not kill people but why risk it: Charlie Mccarthy
A man is not complete until he is married..then..he is finished.
When ALL is lost, what can be found? Even bytes get lonely for a little bit! X-ray confirms Iam spineless!
Offline
Determined that I needed to use the aur for several PKGBUILDS before being able to start the Chromium-browser-svn PKGBUILD.
Was able to install the needed packages, and began the PKGBUILD for the browser at ~2pm.
At ~7;30 pm, the MAKE began and at ~845pm the build aborted with the error :
cp extensions :no such file or directoryYou could call this elephantus gigantus! (885MB in the download).
Where did extensions go?
What to do?
Prediction...This year will be a very odd year!
Hard work does not kill people but why risk it: Charlie Mccarthy
A man is not complete until he is married..then..he is finished.
When ALL is lost, what can be found? Even bytes get lonely for a little bit! X-ray confirms Iam spineless!
Offline
Edited: oops... I changed to yaourt-git, and it works fine :-)
-----
Don't know why, but whenever I use yaourt for this "Chromium-browser-svn" (http://aur.archlinux.org/packages.php?ID=29440), after "Finished making: chromium-browser-svn" message, will show this error:
loading package data...
error: './chromium-browser-svn-2010-38-x86_64.pkg.tar.xz': cannot open package file
==> WARNING: Your package is saved in /tmp/yaourt-tmp-mark/chromium-browser-svn-2010-38-x86_64.pkg.tar.xz
cp: cannot stat `./chromium-browser-svn-2010-38-x86_64.pkg.tar.xz': No such file or directory
==> WARNING: Unable to copy chromium-browser-svn-38-x86_64.pkg.tar.xz to /tmp/yaourt-tmp-mark/ directory
And I couldn't find any chromium-*-pkg.* in the /tmp/ directory...
Any way, run the PKGBUILD by "makepkg" works well. Thank you :-)
Last edited by timefairy (2010-04-21 05:19:05)
Offline
You should report this to the yaourt guys on archlinuxfr ![]()
Offline
timefairy - this is an old thread. See here for further details.
Apart from that, your issue was with yaourt, not chromium, so a new thread would have been more appropriate anyway.
Closed.
Offline
Pages: 1
Topic closed