Open mdayaram opened 10 years ago
Commenting the call to exec_xpath_function
on this line seems to make the compiler happy:
https://github.com/moovweb/gokogiri/blob/master/xpath/xpath.go#L20
I should say, tried compiling with go1.2rc2
and the error still exists.
Made internal branch mw_master
with the above line commented out so that we can continue building for the time being. I'll keep the bug in master for reference until it gets fixed (or remove it later if no fix is found in the future.).
Some more debug info, running go test -x gokogiri/xpath
$ go test -x -ldflags -extldflags=-L/Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/clibs/lib .
WORK=/tmp/go-build533157375
mkdir -p $WORK/gokogiri/xpath/_test/gokogiri/
mkdir -p $WORK/gokogiri/util/_obj/
mkdir -p $WORK/gokogiri/
cd /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/util
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6g -o $WORK/gokogiri/util/_obj/_go_.6 -p gokogiri/util -complete -D _/Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/util -I $WORK ./util.go
mkdir -p $WORK/gokogiri/help/_obj/
cd /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/help
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/cgo -objdir $WORK/gokogiri/help/_obj/ -- -I $WORK/gokogiri/help/_obj/ -I../../../clibs/include/libxml2 help.go
cd /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/util
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/pack grcP $WORK $WORK/gokogiri/util.a $WORK/gokogiri/util/_obj/_go_.6
cd /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/help
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6c -F -V -w -I $WORK/gokogiri/help/_obj/ -I /Users/jenkins/.gvm/gos/go1.2rc2/pkg/darwin_amd64 -o $WORK/gokogiri/help/_obj/_cgo_defun.6 -D GOOS_darwin -D GOARCH_amd64 $WORK/gokogiri/help/_obj/_cgo_defun.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -print-libgcc-file-name
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/help/_obj/ -I../../../clibs/include/libxml2 -o $WORK/gokogiri/help/_obj/_cgo_main.o -c $WORK/gokogiri/help/_obj/_cgo_main.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/help/_obj/ -I../../../clibs/include/libxml2 -o $WORK/gokogiri/help/_obj/_cgo_export.o -c $WORK/gokogiri/help/_obj/_cgo_export.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/help/_obj/ -I../../../clibs/include/libxml2 -o $WORK/gokogiri/help/_obj/help.cgo2.o -c $WORK/gokogiri/help/_obj/help.cgo2.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -o $WORK/gokogiri/help/_obj/_cgo_.o $WORK/gokogiri/help/_obj/_cgo_main.o $WORK/gokogiri/help/_obj/_cgo_export.o $WORK/gokogiri/help/_obj/help.cgo2.o -lxml2 -L../../../clibs/lib
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/cgo -objdir $WORK/gokogiri/help/_obj/ -dynimport $WORK/gokogiri/help/_obj/_cgo_.o -dynout $WORK/gokogiri/help/_obj/_cgo_import.c
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6c -F -V -w -I $WORK/gokogiri/help/_obj/ -I /Users/jenkins/.gvm/gos/go1.2rc2/pkg/darwin_amd64 -o $WORK/gokogiri/help/_obj/_cgo_import.6 -D GOOS_darwin -D GOARCH_amd64 $WORK/gokogiri/help/_obj/_cgo_import.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -o $WORK/gokogiri/help/_obj/_all.o $WORK/gokogiri/help/_obj/_cgo_export.o $WORK/gokogiri/help/_obj/help.cgo2.o -L../../../clibs/lib -Wl,-r -nostdlib /usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64/libgcc.a
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6g -o $WORK/gokogiri/help/_obj/_go_.6 -p gokogiri/help -D _/Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/help -I $WORK $WORK/gokogiri/help/_obj/_cgo_gotypes.go $WORK/gokogiri/help/_obj/help.cgo1.go
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/pack grcP $WORK $WORK/gokogiri/help.a $WORK/gokogiri/help/_obj/_go_.6 $WORK/gokogiri/help/_obj/_cgo_import.6 $WORK/gokogiri/help/_obj/_cgo_defun.6 $WORK/gokogiri/help/_obj/_all.o
mkdir -p $WORK/gokogiri/xpath/_test/
cd /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/xpath
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/cgo -objdir $WORK/gokogiri/xpath/_test/ -- -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 expression.go util.go xpath.go
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6c -F -V -w -I $WORK/gokogiri/xpath/_test/ -I /Users/jenkins/.gvm/gos/go1.2rc2/pkg/darwin_amd64 -o $WORK/gokogiri/xpath/_test/_cgo_defun.6 -D GOOS_darwin -D GOARCH_amd64 $WORK/gokogiri/xpath/_test/_cgo_defun.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 -o $WORK/gokogiri/xpath/_test/_cgo_main.o -c $WORK/gokogiri/xpath/_test/_cgo_main.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 -o $WORK/gokogiri/xpath/_test/_cgo_export.o -c $WORK/gokogiri/xpath/_test/_cgo_export.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 -o $WORK/gokogiri/xpath/_test/expression.cgo2.o -c $WORK/gokogiri/xpath/_test/expression.cgo2.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 -o $WORK/gokogiri/xpath/_test/util.cgo2.o -c $WORK/gokogiri/xpath/_test/util.cgo2.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -I $WORK/gokogiri/xpath/_test/ -I../../../clibs/include/libxml2 -I../../../clibs/include/libxml2 -o $WORK/gokogiri/xpath/_test/xpath.cgo2.o -c $WORK/gokogiri/xpath/_test/xpath.cgo2.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -o $WORK/gokogiri/xpath/_test/_cgo_.o $WORK/gokogiri/xpath/_test/_cgo_main.o $WORK/gokogiri/xpath/_test/_cgo_export.o $WORK/gokogiri/xpath/_test/expression.cgo2.o $WORK/gokogiri/xpath/_test/util.cgo2.o $WORK/gokogiri/xpath/_test/xpath.cgo2.o -lxml2 -L../../../clibs/lib -lxml2 -L../../../clibs/lib
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/cgo -objdir $WORK/gokogiri/xpath/_test/ -dynimport $WORK/gokogiri/xpath/_test/_cgo_.o -dynout $WORK/gokogiri/xpath/_test/_cgo_import.c
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6c -F -V -w -I $WORK/gokogiri/xpath/_test/ -I /Users/jenkins/.gvm/gos/go1.2rc2/pkg/darwin_amd64 -o $WORK/gokogiri/xpath/_test/_cgo_import.6 -D GOOS_darwin -D GOARCH_amd64 $WORK/gokogiri/xpath/_test/_cgo_import.c
gcc -I . -g -O2 -fPIC -m64 -pthread -fno-common -o $WORK/gokogiri/xpath/_test/_all.o $WORK/gokogiri/xpath/_test/_cgo_export.o $WORK/gokogiri/xpath/_test/expression.cgo2.o $WORK/gokogiri/xpath/_test/util.cgo2.o $WORK/gokogiri/xpath/_test/xpath.cgo2.o -L../../../clibs/lib -L../../../clibs/lib -Wl,-r -nostdlib /usr/llvm-gcc-4.2/bin/../lib/gcc/i686-apple-darwin10/4.2.1/x86_64/libgcc.a
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6g -o $WORK/gokogiri/xpath/_test/_go_.6 -p gokogiri/xpath -D _/Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/src/gokogiri/xpath -I $WORK -I /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/pkg/darwin_amd64 ./util_test.go ./xpath_test.go $WORK/gokogiri/xpath/_test/_cgo_gotypes.go $WORK/gokogiri/xpath/_test/expression.cgo1.go $WORK/gokogiri/xpath/_test/util.cgo1.go $WORK/gokogiri/xpath/_test/xpath.cgo1.go
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/pack grcP $WORK $WORK/gokogiri/xpath/_test/gokogiri/xpath.a $WORK/gokogiri/xpath/_test/_go_.6 $WORK/gokogiri/xpath/_test/_cgo_import.6 $WORK/gokogiri/xpath/_test/_cgo_defun.6 $WORK/gokogiri/xpath/_test/_all.o
cd $WORK/gokogiri/xpath/_test
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6g -o ./_go_.6 -p testmain -complete -D "" -I . -I $WORK ./_testmain.go
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/pack grcP $WORK ./main.a ./_go_.6
cd .
/Users/jenkins/.gvm/gos/go1.2rc2/pkg/tool/darwin_amd64/6l -o $WORK/gokogiri/xpath/_test/xpath.test -L $WORK/gokogiri/xpath/_test -L $WORK -L /Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/pkg/darwin_amd64 -extldflags=-L/Users/Shared/JenkinsNet/Home/workspace/manhattan-4.8-build/label/darwin_amd64/.build-sandbox/clibs/lib $WORK/gokogiri/xpath/_test/main.a
# testmain
gokogiri/xpath(__TEXT/__text): unexpected GOT reloc for non-dynamic symbol exec_xpath_function2
$WORK/gokogiri/xpath/_test/xpath.test
FAIL gokogiri/xpath [build failed]
Looking at http://code.google.com/p/go/issues/detail?id=4782 and http://code.google.com/p/go/issues/detail?id=4069 it seems like it might be a toolchain issue (which would make sense since it only happens in certain Mac environments).
You could try "-ldflags=-hostobj" when building in those failing environments and see if that makes a difference.
Hmmm, unfortunately, that did not help. I filed a new issue in code.google.com:
https://code.google.com/p/go/issues/detail?id=6661&thanks=6661&ts=1382660533
As a result, I've cleaned up the master
branch to make it go-getable and compileable against standard libxml. So hopefully doing pull requests will be easier now ^.^
I've only been able to reproduce this in certain mac environments, but it looks like for certain cases, trying to compile yields the following error:
I've tried using all versions of Go, and the error is consistent. However, it's not consistent across all Darwin machines.
Specs for one of the machines where the error appears consistently:
Specs for a Darwin machine where the problem consistently does NOT appear: