History Of Ticket 81d35d664d8b3ea11950b30d9eafd636d851bb85
  1. Ticket change [f2ef6bf134] (rid 622) by anonymous on 2014-07-30 15:58:58:

    1. Change foundin to "0.22"
    2. Change icomment to:

      I'm attempting to write a small wrapper around libxml2. Here is some test code to try and access the functions and present the error:

      --- package provide test 0.1 package require tcc4tcl

      set LibPath [file join [file dirname [dict get [info frame [info frame]] file]]]

      # Object encapsulating C code set c [::tcc4tcl::new]

      # Add library paths $c add_include_path [file join $::xsd::LibPath include] $c add_include_path [file join $::xsd::LibPath include libxml] $c add_library_path $::xsd::LibPath $c add_library libxml2-2

      # Try to use xmlLineNumbersDefault $c cproc test {} ok { xmlLineNumbersDefault(1); }

      # Compile C code $c go ---

      The LibPath variable is set such that it is the location of the 'test' package (where I'd like to put the include files and library). Printing it verifies this path is always as expected.

      The above fails when [package require test] is invoked within any directory except the package's directory. When within the package's directory the package loads fine.

      The error returned when running [package require test] from outside its directory:

      tcc: error: undefined symbol 'xmlLineNumbersDefault' relocating failed

      The accompanying stack trace:

      tcc: error: undefined symbol 'xmlLineNumbersDefault' relocating failed while executing "tcc command $procname $cname" (procedure "::tcc4tcl::_go" line 106) invoked from within "::tcc4tcl::_go ::tcc4tcl::tcc_1 0" ("uplevel" body line 1) invoked from within "uplevel 1 [list $callcmd $handle {*}$args]" (procedure "::tcc4tcl::tcc_1" line 19) invoked from within "$c go" (file "C:/Home/Tcl/test/test.tcl" line 30) invoked from within "source C:/Home/Tcl/test/test.tcl" ("package ifneeded test 0.1" script) invoked from within "package require test" ("uplevel" body line 1) invoked from within "uplevel #0 {package require test}"

    3. Change login to "anonymous"
    4. Change mimetype to "text/x-fossil-plain"
    5. Change severity to "Critical"
    6. Change status to "Open"
    7. Change title to:

      'Relocating failed' error returned when compiling cproc after setting defined library location

    8. Change type to "Code_Defect"
  2. Ticket change [22aa065e31] (rid 623) by anonymous on 2014-07-30 16:49:51:

    1. Change icomment to:

      I'm attempting to write a small wrapper around libxml2. Here is some test code to try and access the functions and present the error:

      --- package provide test 0.1 package require tcc4tcl

      set LibPath [file join [file dirname [dict get [info frame [info frame]] file]]]

      # Object encapsulating C code set c [::tcc4tcl::new]

      # Add library paths $c add_include_path [file join $LibPath include] $c add_include_path [file join $LibPath include libxml] $c add_library_path $LibPath $c add_library libxml2-2

      # Try to use xmlLineNumbersDefault $c cproc test {} ok { xmlLineNumbersDefault(1); }

      # Compile C code $c go ---

      The LibPath variable is set such that it is the location of the 'test' package (where I'd like to put the include files and library). Printing it verifies this path is always as expected.

      The above fails when [package require test] is invoked within any directory except the package's directory. When within the package's directory the package loads fine.

      The error returned when running [package require test] from outside its directory:

      tcc: error: undefined symbol 'xmlLineNumbersDefault' relocating failed

      The accompanying stack trace:

      tcc: error: undefined symbol 'xmlLineNumbersDefault' relocating failed while executing "tcc command $procname $cname" (procedure "::tcc4tcl::_go" line 106) invoked from within "::tcc4tcl::_go ::tcc4tcl::tcc_1 0" ("uplevel" body line 1) invoked from within "uplevel 1 [list $callcmd $handle {*}$args]" (procedure "::tcc4tcl::tcc_1" line 19) invoked from within "$c go" (file "C:/Home/Tcl/test/test.tcl" line 30) invoked from within "source C:/Home/Tcl/test/test.tcl" ("package ifneeded test 0.1" script) invoked from within "package require test" ("uplevel" body line 1) invoked from within

    2. Change login to "anonymous"
    3. Change mimetype to "text/x-fossil-plain"
    4. Change priority to "Immediate"
    5. Change resolution to "Open"
  3. Ticket change [009b0f33a6] (rid 624) by anonymous on 2014-07-30 16:53:19:

    1. Change icomment to:

      I was not sure how to edit a ticket in Fossil. It seems to just append my 'edit'. Please reference my updated description. I had typed the 'LibPath' variable names incorrectly (::xsd::LibPath), I've corrected them to be 'LibPath'.

    2. Change login to "anonymous"
    3. Change mimetype to "text/x-fossil-plain"
  4. Ticket change [ec7924b0cc] (rid 689) by rkeene on 2016-03-28 15:02:56:

    1. Change icomment to:

      The issue here is two fold:

      1. You are using "libxml2-2" instead of "xml2-2" (i.e., without the "lib" prefix) 2. tcc4tcl doesn't notify you of your error

      It will be addressed in an upcoming release.

    2. Change login to "rkeene"
    3. Change mimetype to "text/x-fossil-plain"
    4. Change priority to "Medium"
    5. Change severity to "Minor"
    6. Change status to "Review"