On Mon, 21 May 2001, Randall Hopper wrote:
> --- Konstantinos Margaritis <[EMAIL PROTECTED]> wrote:
> > gcc ... -c remote.c
> > remote.c: In function `ExConnectTo':
> >
>
> What is the error that you are getting (the next few lines in the output).
> That would help diagnose the problem.
oops, sorry, for some reason i didn't copy+paste right. here is the full
output.
gcc -DHAVE_CONFIG_H -I. -I. -I../../../include -I../../../include
-I./../libdx -Dlinux -DHAVE_CONFIG_H -I/usr/include/freetype2
-I/usr/include/freetype2 -D_REENTRANT -D_FILE_OFFSET_BITS=64
-I/usr/include -I/usr/X11R6/include -I/usr/X11R6/include/X11
-D_FILE_OFFSET_BITS=64 -I/usr/X11R6/include -g -O2 -g -O2
-I/usr/X11R6/include -D_GNU_SOURCE -c remote.c
remote.c: In function `ExConnectTo':
remote.c:165: `RSH' undeclared (first use in this function)
remote.c:165: (Each undeclared identifier is reported only once
remote.c:165: for each function it appears in.)
make: *** [remote.o] Error 1
>
> What value are you specifying for --with-rsh? Does your build work if you
> don't
> use --with-rsh?
I use --with-rsh=$(RSH) in debian/rules (attached), where I have set
RSH=$(shell which ssh) before. I maintain the debian package, and in the
last cvs versions I keep stumbling upon this thing, that's why the
packages have not been updated for so long. but even without this option,
it still does not compile.
> Do a:
>
> find . -type f | xargs egrep '# *(undef|define) *RSH'
>
> in your post-configure tree and browse the results.
>
> Looking at a post-configure 5/11 CVS tree here on IRIX, I see these RSH refs:
>
> ./include/dx/arch.h:#undef RSH
> ./include/dx/arch.h:#define RSH "rsh"
> ./include/dxconfig.h:#define RSH "/usr/local/bin/ssh"
This is what I get:
$ find . -type f | xargs egrep '# *(undef|define) *RSH'
./acconfig.h:#undef RSH
./include/dx/arch.h:#undef RSH
./include/dx/arch.h:#define RSH "rsh"
./configure:#define RSH "$rsh_path"
> as well as those in configure, acconfig.h, and dxconfig.h.in, but these latter
> three AFAIK aren't included in source files. Note that dxconfig.h's value is
> what was given to configure (e.g. --with-rsh=/usr/local/bin/ssh).
> So given that arch.h or dxconfig.h is included, and a valid C string value
> (without quotes) was given to --with-rsh, I'd think your source should
> compile.
>
> Note that --with-rsh=\"/bin/ssh\" won't compile -- drop the quotes.
no quotes.
Any ideas? For some reason dxconfig.h does not get this definition.
This is on a debian linux (running testing).
Konstantinos Margaritis
#!/usr/bin/make -f
#-*- makefile -*-
# Made with the aid of dh_make, by Craig Small
# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
# Also some stuff taken from debmake scripts, by Christoph Lameter.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
INSTALLDIR=debian/tmp/usr
RSH=$(shell which ssh)
configure: configure-stamp
configure-stamp:
dh_testdir
CFLAGS="-O2 -fsigned-char" \
CXXFLAGS="-O2 -fsigned-char -fpermissive" \
./configure --prefix=/usr/lib --enable-installhtml --with-rsh=$(RSH)
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
# Add here commands to compile the package.
$(MAKE)
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f configure-stamp build-stamp install-stamp
# Add here commands to clean up after the build process.
-$(MAKE) distclean
dh_clean
install: install-stamp
install-stamp: build-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/tmp.
$(MAKE) install prefix=`pwd`/$(INSTALLDIR)/lib
mv $(INSTALLDIR)/lib/bin/dx $(INSTALLDIR)/bin
rm -rf $(INSTALLDIR)/lib/bin
mv $(INSTALLDIR)/lib/dx/include/* $(INSTALLDIR)/include
rm -rf $(INSTALLDIR)/lib/dx/include
cd $(INSTALLDIR)/lib/dx/ && ln -s ../../include include
mv $(INSTALLDIR)/lib/dx/doc/* $(INSTALLDIR)/share/doc/dx/
cd $(INSTALLDIR)/share/doc/dx && mv README README_all
rm -rf $(INSTALLDIR)/lib/dx/doc
mv $(INSTALLDIR)/lib/dx/html $(INSTALLDIR)/share/doc/dx/html
mv $(INSTALLDIR)/lib/dx/help $(INSTALLDIR)/share/doc/dx/help
cd $(INSTALLDIR)/lib/dx && ln -s ../../share/doc/dx/html html
cd $(INSTALLDIR)/lib/dx && ln -s ../../share/doc/dx/help help
mv $(INSTALLDIR)/lib/dx/man/manl/dx.l $(INSTALLDIR)/share/man/man1/dx.1
rm -rf $(INSTALLDIR)/lib/dx/man
cd $(INSTALLDIR)/lib && \
for i in dx/lib_linux/*.a; do \
ln -s $$i `basename $$i`; \
done
cd $(INSTALLDIR)/share/doc && \
ln -s dx dx-dev; \
ln -s dx dx-doc
cp debian/dxicon.xpm $(INSTALLDIR)/share/dx/
cp debian/dx-doc.doc-base $(INSTALLDIR)/share/doc-base/dx
dh_movefiles
touch install-stamp
# Build architecture-independent files here.
binary-indep: build install
dh_testdir -i
dh_testroot -i
dh_installexamples -i
dh_installdirs -i
dh_compress -i -Xhtml -Xhelp
dh_fixperms -i
dh_installdeb -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
# dh_testversion
dh_testdir -a
dh_testroot -a
dh_installdocs -pdx
dh_installexamples -pdx
dh_installmenu -pdx
dh_installmanpages -pdx
dh_installchangelogs -pdx ChangeLog
dh_strip -pdx
dh_link -a
dh_compress -a
dh_fixperms -a
dh_shlibdeps -a
dh_installdeb -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary