Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

Problems with "ebuild xxx compile" but not with "configure"

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
8 posts • Page 1 of 1
Author
Message
joaquin
n00b
n00b
Posts: 16
Joined: Fri Jan 05, 2007 4:20 pm

Problems with "ebuild xxx compile" but not with &q

  • Quote

Post by joaquin » Fri Jan 19, 2007 6:02 pm

Hi

I am trying to install sandbox 1.2.18 but i get:

Code: Select all

checking for C compiler default output file name... configure: error: C compiler cannot create executables
I tried with:

Code: Select all

# ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild compile
And i get the same error. Then tried:

Code: Select all

# ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild unpack
# cd /var/tmp/portage/sys-apps/sandbox-1.2.18/work/build-x86-x86_64-pc-linux-gnu
# ../sandbox-1.2.18//configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib32 --enable-multilib --build=i686-pc-linux-gnu
# make
And i have not problems compiling the source using this method. I get the configure line from config.log when the error ocurred. Looking in config.log when i get error, i read:

Code: Select all

/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../libc.so when searching for -lc
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../libc.a when searching for -lc
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libc.a when searching for -lc
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lc
collect2: ld returned 1 exit status
I need install ">sandbox-1.2.17" because is a dependency for other program. I probed with 1.2.18~1.2.20_alpha2 and i was not able to install any of this versions.

[*]So, what is the different when i compile the source using emerge and using ./configure?[*]
[*]Why when i run "ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild install" emerge try to unpack and compile again?[*]

I would like to do the next because i could install the ebuild:

Code: Select all

# ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild unpack
# cd /var/tmp/portage/sys-apps/sandbox-1.2.18/work/build-x86-x86_64-pc-linux-gnu
../sandbox-1.2.20alpha2//configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib32 --enable-multilib --build=i686-pc-linux-gnu
# make
# ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild install
[*]How can i do this?[*]

Regards
Top
Darknight
Guru
Guru
User avatar
Posts: 485
Joined: Mon Jan 26, 2004 8:41 am
Location: Italy

  • Quote

Post by Darknight » Sat Jan 20, 2007 12:43 am

I assume that the ebuild is passing some parameters to configure which you don't. It may be related to use flags or a bug, look in bugzilla if you can't make it work toying with the use flags.
Top
SinoTech
Advocate
Advocate
Posts: 2579
Joined: Sat Mar 20, 2004 3:52 pm
Location: Neunkirchen / Saarland / Germany
Contact:
Contact SinoTech
Website

Re: Problems with "ebuild xxx compile" but not wit

  • Quote

Post by SinoTech » Sat Jan 20, 2007 12:46 am

joaquin wrote: [...]
[*]So, what is the different when i compile the source using emerge and using ./configure?[*]
[...]
There are two differences
1. The ebuild may pass additional options to the "configure" script.
2. During compilation the compiler will use the options specified through the "CFLAGS" variable in your make.conf.
joaquin wrote: [...]
[*]Why when i run "ebuild /usr/portage/sys-apps/sandbox/sandbox-1.2.18.ebuild install" emerge try to unpack and compile again?[*]
[...]
I assume "install" performs all the steps from unpacking, compiling and hence installing the package to a temporary directory (not to "/").
To install the compiled package to your "/"-directory, you have to use the "qmerge" option instead.
man ebuild wrote:

Code: Select all

qmerge This function installs all the files in the install directory to the live filesystem.  The process works  as  fol-
              lows:  first, the pkg_preinst() function (if specified) is run.  Then, the files are merged into the live filesys-
              tem, and the installed files' md5 digests are recorded  in  /var/db/pkg/${CATEGORY}/${PN}-${PVR}/CONTENTS.   After
              all the files have been merged, the pkg_postinst() function (if specified) is executed.
Cheers,

Sino
Help to answer the unanswered
Top
joaquin
n00b
n00b
Posts: 16
Joined: Fri Jan 05, 2007 4:20 pm

Problems with "ebuild xxx compile" but not with &q

  • Quote

Post by joaquin » Sat Jan 20, 2007 3:05 am

SinoTech wrote:2. During compilation the compiler will use the options specified through the "CFLAGS" variable in your make.conf.
Yes, but my CFLAGS is "-march=athlon64 -O2" so i think there is no problem with my CFLAGS.
SinoTech wrote:I assume "install" performs all the steps from unpacking, compiling and hence installing the package to a temporary directory (not to "/").
To install the compiled package to your "/"-directory, you have to use the "qmerge" option instead.
I get an error:

Code: Select all

!!! mydo=qmerge, but install phase hasn't been ran
From "man ebuild":
install Installs the package to the temporary install directory by running the src_install() function....
qmerge This function installs all the files in the install directory to the live filesystem......
Obviously, i must run ebuild...install before ebuild...qmerge. But if i run ebuild...install, i lost the source compiled for me using configure and make.

So, how i run ebuild...install && ebuild...qmerge without run ebuild...unpack && ebuild...compile?
Top
joaquin
n00b
n00b
Posts: 16
Joined: Fri Jan 05, 2007 4:20 pm

  • Quote

Post by joaquin » Sat Jan 20, 2007 3:23 am

I found the answer to my problems. I must create an empty file named ".compiled" and ebuild don't compile the source when i run "ebuild...install". So the solution is:

Code: Select all

# touch /var/tmp/portage/sys-apps/sandbox-1.2.18/.compiled
:D
Top
Genone
Retired Dev
Retired Dev
User avatar
Posts: 9656
Joined: Fri Mar 14, 2003 6:02 pm
Location: beyond the rim

  • Quote

Post by Genone » Sat Jan 20, 2007 11:19 am

The error probably comes when the ebuild tries to build/configure the 32bit sandbox. If you call `ebuild` with the --debug option it will tell you exactly what commands it executes.
Top
joaquin
n00b
n00b
Posts: 16
Joined: Fri Jan 05, 2007 4:20 pm

  • Quote

Post by joaquin » Sun Jan 21, 2007 1:06 am

Genone wrote:The error probably comes when the ebuild tries to build/configure the 32bit sandbox. If you call `ebuild` with the --debug option it will tell you exactly what commands it executes.
I tried but i installed sandbox so when i run "ebuild...install" there is not error, i don't know if the error is gone because sandbox is now installed.

I have the same problem with wine, so i run "emerge --debug wine" and output is:

Code: Select all

+ dyn_setup
++ type -t pre_pkg_setup
+ '[' '' == function ']'
+ qa_call pkg_setup
++ shopt
+ local 'shopts=cdable_vars    	off
cdspell        	off
checkhash      	off
checkwinsize   	off
cmdhist        	on
dotglob        	off
execfail       	off
expand_aliases 	on
extdebug       	on
extglob        	off
extquote       	on
failglob       	off
force_fignore  	on
gnu_errfmt     	off
histappend     	off
histreedit     	off
histverify     	off
hostcomplete   	on
huponexit      	off
interactive_comments	on
lithist        	off
login_shell    	off
mailwarn       	off
no_empty_cmd_completion	off
nocaseglob     	off
nocasematch    	off
nullglob       	off
progcomp       	on
promptvars     	on
restricted_shell	off
shift_verbose  	off
sourcepath     	on
xpg_echo       	off' 'OLDIFS= 	
'
+ pkg_setup
+ return
++ shopt
+ [[ cdable_vars    	off
cdspell        	off
checkhash      	off
checkwinsize   	off
cmdhist        	on
dotglob        	off
execfail       	off
expand_aliases 	on
extdebug       	on
extglob        	off
extquote       	on
failglob       	off
force_fignore  	on
gnu_errfmt     	off
histappend     	off
histreedit     	off
histverify     	off
hostcomplete   	on
huponexit      	off
interactive_comments	on
lithist        	off
login_shell    	off
mailwarn       	off
no_empty_cmd_completion	off
nocaseglob     	off
nocasematch    	off
nullglob       	off
progcomp       	on
promptvars     	on
restricted_shell	off
shift_verbose  	off
sourcepath     	on
xpg_echo       	off != cdable_vars    	off
cdspell        	off
checkhash      	off
checkwinsize   	off
cmdhist        	on
dotglob        	off
execfail       	off
expand_aliases 	on
extdebug       	on
extglob        	off
extquote       	on
failglob       	off
force_fignore  	on
gnu_errfmt     	off
histappend     	off
histreedit     	off
histverify     	off
hostcomplete   	on
huponexit      	off
interactive_comments	on
lithist        	off
login_shell    	off
mailwarn       	off
no_empty_cmd_completion	off
nocaseglob     	off
nocasematch    	off
nullglob       	off
progcomp       	on
promptvars     	on
restricted_shell	off
shift_verbose  	off
sourcepath     	on
xpg_echo       	off ]]
+ [[  	
 != \ \	\
 ]]
+ return 0
++ type -t post_pkg_setup
+ '[' '' == function ']'
+ set +x
+ dyn_unpack
++ type -t pre_src_unpack
+ '[' '' == function ']'
+ local newstuff=no
+ '[' -e /var/tmp/portage/app-emulation/wine-0.9.29/work ']'
+ '[' no == yes ']'
+ '[' -e /var/tmp/portage/app-emulation/wine-0.9.29/work ']'
+ '[' '!' -d /var/tmp/portage/app-emulation/wine-0.9.29/work ']'
+ install -m0700 -d /var/tmp/portage/app-emulation/wine-0.9.29/work
+ cd /var/tmp/portage/app-emulation/wine-0.9.29/work
+ vecho '>>> Unpacking source...'

--->>> CUT <<<---

+ echo '>>> Source unpacked.'
>>> Source unpacked.
+ cd /var/tmp/portage/app-emulation/wine-0.9.29
++ type -t post_src_unpack
+ '[' '' == function ']'
+ set +x
+ dyn_compile
+ trap abort_compile SIGINT SIGQUIT
++ type -t pre_src_compile
+ '[' '' == function ']'
+ '[' '-march=athlon64 -O2 -pipe' '!=' unset ']'
+ export CFLAGS
+ '[' '-march=athlon64 -O2 -pipe' '!=' unset ']'
+ export CXXFLAGS
+ '[' unset '!=' unset ']'
+ '[' unset '!=' unset ']'
+ '[' unset '!=' unset ']'
+ '[' unset '!=' unset ']'
+ '[' unset '!=' unset ']'
+ '[' unset '!=' unset ']'
+ '[' unset == unset ']'
+ export DISTCC_DIR=/var/tmp/.distcc
+ DISTCC_DIR=/var/tmp/.distcc
+ '[' '!' -z /var/tmp/.distcc ']'
+ addwrite /var/tmp/.distcc
+ [[ -z /var/tmp/.distcc ]]
+ [[ -n '' ]]
+ export SANDBOX_WRITE=/dev/fd:/proc/self/fd:/dev/zero:/dev/null:/dev/full:/dev/console:/dev/tty:/dev/vc/:/dev/pty:/dev/tts:/dev/pts/:/dev/shm:/tmp/:/var/tmp/:/var/tmp/portage/app-emulation/wine-0.9.29/homedir/.bash_history::/usr/tmp/conftest:/usr/lib/conftest:/usr/lib32/conftest:/usr/lib64/conftest:/usr/tmp/cf:/usr/lib/cf:/usr/lib32/cf:/usr/lib64/cf:/var/tmp/portage/app-emulation/wine-0.9.29/homedir/.gconfd/lock:/var/log/scrollkeeper.log:/dev/shm:/dev/stdout:/dev/stderr:/var/tmp:/var/tmp/.distcc
+ SANDBOX_WRITE=/dev/fd:/proc/self/fd:/dev/zero:/dev/null:/dev/full:/dev/console:/dev/tty:/dev/vc/:/dev/pty:/dev/tts:/dev/pts/:/dev/shm:/tmp/:/var/tmp/:/var/tmp/portage/app-emulation/wine-0.9.29/homedir/.bash_history::/usr/tmp/conftest:/usr/lib/conftest:/usr/lib32/conftest:/usr/lib64/conftest:/usr/tmp/cf:/usr/lib/cf:/usr/lib32/cf:/usr/lib64/cf:/var/tmp/portage/app-emulation/wine-0.9.29/homedir/.gconfd/lock:/var/log/scrollkeeper.log:/dev/shm:/dev/stdout:/dev/stderr:/var/tmp:/var/tmp/.distcc
+ LIBDIR_VAR=LIBDIR_amd64
+ '[' -z /usr/qt/3/lib64/pkgconfig -a -n amd64 -a -n lib64 ']'
+ unset LIBDIR_VAR
+ hasq noauto autoconfig distlocks metadata-transfer sandbox sfperms strict
+ [[  autoconfig distlocks metadata-transfer sandbox sfperms strict  == *\ \n\o\a\u\t\o\ * ]]
+ local srcdir=/var/tmp/portage/app-emulation/wine-0.9.29
+ cd /var/tmp/portage/app-emulation/wine-0.9.29

--->>> CUT <<<---

+ econf --sysconfdir=/etc/wine --with-curses --with-opengl --with-x
+ local x
+ local LOCAL_EXTRA_ECONF=
+ '[' -z '' ']'
+ ECONF_SOURCE=.
+ '[' -x ./configure ']'
+ '[' -e /usr/share/gnuconfig/ ']'
++ find /var/tmp/portage/app-emulation/wine-0.9.29/work -type f '(' -name config.guess -o -name config.sub ')'
+ for x in '$(find "${WORKDIR}" -type f '\''('\'' -name config.guess -o -name config.sub '\'')'\'')'
+ vecho ' * econf: updating wine-0.9.29/tools/config.guess with /usr/share/gnuconfig/config.guess'
+ quiet_mode
+ [[ '' -eq 1 ]]
+ echo ' * econf: updating wine-0.9.29/tools/config.guess with /usr/share/gnuconfig/config.guess'
 * econf: updating wine-0.9.29/tools/config.guess with /usr/share/gnuconfig/config.guess
+ cp -f /usr/share/gnuconfig/config.guess /var/tmp/portage/app-emulation/wine-0.9.29/work/wine-0.9.29/tools/config.guess
+ for x in '$(find "${WORKDIR}" -type f '\''('\'' -name config.guess -o -name config.sub '\'')'\'')'
+ vecho ' * econf: updating wine-0.9.29/tools/config.sub with /usr/share/gnuconfig/config.sub'
+ quiet_mode
+ [[ '' -eq 1 ]]
+ echo ' * econf: updating wine-0.9.29/tools/config.sub with /usr/share/gnuconfig/config.sub'
 * econf: updating wine-0.9.29/tools/config.sub with /usr/share/gnuconfig/config.sub
+ cp -f /usr/share/gnuconfig/config.sub /var/tmp/portage/app-emulation/wine-0.9.29/work/wine-0.9.29/tools/config.sub
+ '[' '!' -z x86_64-pc-linux-gnu ']'
+ LOCAL_EXTRA_ECONF='--build=x86_64-pc-linux-gnu '
+ '[' '!' -z '' ']'
+ LIBDIR_VAR=LIBDIR_x86
+ '[' -n x86 -a -n lib32 ']'
+ CONF_LIBDIR=lib32
+ unset LIBDIR_VAR
+ '[' -n lib32 ']'
+ '[' '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' == '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' ']'
+ '[' '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' '!=' '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' ']'
+ '[' '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' '!=' '--sysconfdir=/etc/wine --with-curses --with-opengl --with-x' ']'
+ CONF_PREFIX=/usr
+ export CONF_PREFIX
+ '[' l '!=' / ']'
+ CONF_LIBDIR=/lib32
++ strip_duplicate_slashes /usr/lib32
++ [[ -n /usr/lib32 ]]
++ local removed=/usr/lib32
++ [[ /usr/lib32 == *//* ]]
++ echo /usr/lib32
+ CONF_LIBDIR_RESULT=/usr/lib32
+ LOCAL_EXTRA_ECONF='--libdir=/usr/lib32 --build=x86_64-pc-linux-gnu '
+ local TMP_CONFCACHE_DIR CONFCACHE_ARG
+ hasq confcache autoconfig distlocks metadata-transfer sandbox sfperms strict
+ [[  autoconfig distlocks metadata-transfer sandbox sfperms strict  == *\ \c\o\n\f\c\a\c\h\e\ * ]]
+ CONFCACHE=
+ vecho ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --sysconfdir=/etc/wine --with-curses --with-opengl --with-x --libdir=/usr/lib32 --build=x86_64-pc-linux-gnu
+ quiet_mode
+ [[ '' -eq 1 ]]
+ echo ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --sysconfdir=/etc/wine --with-curses --with-opengl --with-x --libdir=/usr/lib32 --build=x86_64-pc-linux-gnu
./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --sysconfdir=/etc/wine --with-curses --with-opengl --with-x --libdir=/usr/lib32 --build=x86_64-pc-linux-gnu
+ ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --sysconfdir=/etc/wine --with-curses --with-opengl --with-x --libdir=/usr/lib32 --build=x86_64-pc-linux-gnu
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking whether make sets $(MAKE)... yes
checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc
checking for C compiler default output file name... 
configure: error: C compiler cannot create executables
See `config.log' for more details.
+ '[' -s config.log ']'
+ echo
The output is very long, so i delete some lines. I have the same errors in wine: "configure: error: C compiler cannot create executables"

I compiled wine-0.9.28 without problem and sandbox-1.2.17 some weeks ago, so i think that a program installed after them broke my portage system. Some help??
Top
Genone
Retired Dev
Retired Dev
User avatar
Posts: 9656
Joined: Fri Mar 14, 2003 6:02 pm
Location: beyond the rim

  • Quote

Post by Genone » Sun Jan 21, 2007 1:16 am

Did you maybe update/remerge gcc, glibc or binutils in between?
Top
Post Reply

8 posts • Page 1 of 1

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic