Page 12 of 19 FirstFirst ... 21011121314 ... LastLast
Results 111 to 120 of 189

Thread: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

  1. #111
    Join Date
    May 2010
    Beans
    2

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    I got my MX870 and everything works fine. Everything... except the access of the memory card via network. I don't want to use the scanning-drivers, but putting documents in the document feeder and being able to access the pdfs on the memorycard via network would be fine.

    Via the control panel on its webserver you can allow the printer to make the memory card accessible via samba. The files are listed in nautilus but unfortunately I can't really read them: They are downloaded - but all programs are not able to show them. Any experiences or ideas?

    Thank you!

  2. #112

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Hi Team

    I have used the script suggestions at the beginning of this thread which executed without error (well beside a warning message about the wrong architecture but the script installed anyway)

    I have the scanner working - so thats great. However the printer isnt there, even if I manually install it the driver isnt in the list.

    I'm running 11.04 with the Pixma MX870

    (I'm also trying Ubuntu from Madriva Linux - RPM distribution)

    So any ideas?

    Cheers

    Mark

  3. #113

    Smile Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Whoot! Easiest setup EVER! Worked wonders (when directions are followed) on Ubuntu 11.10 64 bit over Wifi. Thanks a million!

    One clarification you should make for more advanced users like me: I expected that I had to put your shell script in a specific place in relation to the downloaded files + I wasn't sure if I should unpack the downloaded files or not. So you should simply include the following so things are clear:

    Add to #1: "Do not unpack."
    Change #4: "Save the file anywhere you wish and quit gedit."
    Add to #6: "Script will prompt you for the location of the downloads."

    Thanks again for making this so easy!

    Quote Originally Posted by GenePayne View Post
    I have gotten the Canon MX870 linux drivers to work for 64-bit 11.04 Ubuntu. I had 3 problems to get through to get it to work on my system: 1) libc6/libcupsys2/libpopt0 dependency issues, 2) "package management system cannot be identified" problem, and 3) 64-bit vs. 32-bit issue.
    I created a script that combined bits of different posts to fix these 3 problems in one install. Thanks to thewump and Jack Russell (whose script I borrowed heavily from).

    STEPS:
    1. Download the drivers from
    HTML Code:
    http://support-sg.canon-asia.com/contents/SG/EN/0100272302.html
    2. Open a text editor window
    Code:
    gedit modify_ps_drivers.sh &
    3. Paste the contents of the follwoing script into the gedit window
    Code:
    #!/bin/bash
    
    function doFix
    {
      echo -n "At $(pwd), fixing $1... "
      if [ -d foo ]; then
        rm -rf foo
      fi
      mkdir foo
      cd foo
      ar x ../$1
      # Next unpack control.
      mkdir control
      cd control
      gzip -d -c ../control.tar.gz | tar xf - 
      cat control | grep -v Depends: > control2
      rm control
      mv control2 control
      tar cf - ./ > ../control2.tar
      cd ..
      mv control.tar.gz control.tar.gz.old
      mv control2.tar control.tar
      gzip control.tar
      ar r ../$1 control.tar.gz
      cd ..
      if [ -d foo ]; then
        rm -rf foo
      fi
      echo " fixed."
    }
    
    function extractFilenameFromPath
    {
      fullPath=$1
      lengthPath=${#fullPath}
      i=$lengthPath
      filename="$fullPath"
    
      while [ $i -gt 0 ]; do
        if [ "${fullPath:i:1}" = "/" ]; then
          break
        else
          filename="${fullPath:i:lengthPath-i}"
        fi
      let i--
      done
      echo "$filename"
    }
    
    ### MAIN
    #Check for zenity first
    a=$(zenity --version)
    err=$?
    if [ $err -ne 0 ]; then
      echo "Error: zenity needs to be installed to use this script. Type sudo apt-get install zenity."; echo
      exit
    fi
    printer=$(zenity --file-selection --title "Select printer driver tar.gz file")
    scanner=$(zenity --file-selection --title "Select scanner driver tar.gz file")
    tar xzf $printer
    tar xzf $scanner
    printer=$(extractFilenameFromPath $printer)
    scanner=$(extractFilenameFromPath $scanner)
    printerLen=${#printer}
    scannerLen=${#scanner}
    printer=${printer:0:printerLen-7}
    scanner=${scanner:0:scannerLen-7}
    printerLs=$(ls $printer/packages)
    printerDeb1=$(echo "$printerLs" | head -n 1)
    printerDeb2=$(echo "$printerLs" | head -n 2 | tail -n 1)
    scannerLs=$(ls $scanner/packages)
    scannerDeb1=$(echo "$scannerLs" | head -n 1)
    scannerDeb2=$(echo "$scannerLs" | head -n 2 | tail -n 1)
    #echo $printer, $printerDeb1, $printerDeb2
    #echo $scanner, $scannerDeb1, $scannerDeb2
    cd $printer/packages
    doFix $printerDeb1
    doFix $printerDeb2
    cd ..
    #Fix rpm response so it doesn't get the wrong version
    sed -i 's/c_system_rpm=$?/c_system_rpm=1/g' install.sh
    #Add '--force-architecture' to install command for 64-bit
    sed -i 's/sudo dpkg -iG/sudo dpkg --force-architecture -iG/g' install.sh
    cd ..
    cd $scanner/packages
    doFix $scannerDeb1
    doFix $scannerDeb2
    cd ..
    #Fix rpm response so it doesn't get the wrong version
    sed -i 's/c_system_rpm=$?/c_system_rpm=1/g' install.sh
    #Add '--force-architecture' to install command for 64-bit
    sed -i 's/sudo dpkg -iG/sudo dpkg --force-architecture -iG/g' install.sh
    cd ..
    echo
    echo "Run the install.sh script in $printer to install printer driver, and the install.sh script in $scanner to install the scanner driver."
    4. Save the file and quit gedit

    5. Make sure the file is executable
    Code:
    chmod a+x modify_ps_drivers.sh
    6. Run the script above which will modify the driver install scripts
    Code:
    ./modify_ps_drivers.sh
    7. Install the printer driver
    Code:
    cnijfilter-mx870series-3.30-1-i386-deb/install.sh
    8. Install the scanner driver
    Code:
    scangearmp-mx870series-1.50-1-i386-deb/install.sh

    Optional: create a shortcut icon in start/unity menu for the canon scanner software, which gets installed into /usr/bin/scangearmp

  4. #114
    Join Date
    Sep 2010
    Beans
    36

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    sorry didn't mean to post

  5. #115
    Join Date
    Aug 2008
    Location
    Salt Lake City, USA
    Beans
    68
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Quote Originally Posted by NathanBrauer View Post
    Whoot! Easiest setup EVER! Worked wonders (when directions are followed) on Ubuntu 11.10 64 bit over Wifi. Thanks a million!

    One clarification you should make for more advanced users like me: I expected that I had to put your shell script in a specific place in relation to the downloaded files + I wasn't sure if I should unpack the downloaded files or not. So you should simply include the following so things are clear:

    Add to #1: "Do not unpack."
    Change #4: "Save the file anywhere you wish and quit gedit."
    Add to #6: "Script will prompt you for the location of the downloads."

    Thanks again for making this so easy!
    Modified the original post with these changes. Thanks for the feedback, glad it worked!

  6. #116
    Join Date
    Nov 2011
    Beans
    2

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    "An error occurred. The package management system cannot be identified."
    I have had the same probem in Fedora and now I updated the file to work for me but I get
    Code:
    ./install.sh
    ./install.sh: line 1681: syntax error: unexpected end of file
    As I am a little unexperienced at scripting, I would appreciate your help.
    Attached Files Attached Files
    Last edited by ravor; November 8th, 2011 at 12:10 AM.

  7. #117
    Join Date
    Aug 2008
    Location
    Salt Lake City, USA
    Beans
    68
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Quote Originally Posted by ravor View Post
    "An error occurred. The package management system cannot be identified."
    I have had the same probem in Fedora and now I updated the file to work for me but I get
    Code:
    ./install.sh
    ./install.sh: line 1681: syntax error: unexpected end of file
    As I am a little unexperienced at scripting, I would appreciate your help.
    The install.sh file that you attached differs from mine in that it has some lines commented-out (1239 - 1250, and then at the last line 1680). This results in an imbalanced if statement condition (at line 1238 ) causing your unexpected EOF error.

  8. #118
    Join Date
    Nov 2011
    Beans
    2

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Quote Originally Posted by GenePayne View Post
    The install.sh file that you attached differs from mine in that it has some lines commented-out (1239 - 1250, and then at the last line 1680). This results in an imbalanced if statement condition (at line 1238 ) causing your unexpected EOF error.
    Oh, yes, of course it works now, thanks!

  9. #119

    Re: How To: Install Canon PIXMA MX870 drivers on i368 and 64bit ubuntu

    Quote Originally Posted by GenePayne View Post
    Modified the original post with these changes. Thanks for the feedback, glad it worked!
    Glad to help!

    I just noticed one problem though. Anyone know how to print in grayscale only?

    This is all I have:




  10. #120

    Post How To: A better patch for Canon PIXMA install.sh

    I ran into the "The package management system cannot be identified" error with both the printer and scanner drivers for the Canon PIXMA MG8100 series found here:I am trying to use an MG8120 with 64-bit Ubuntu 11.04. I'm not sure why the original poster, thewump, used such a crude modification of the install.sh script. The problem with Canon's script is bad logic that can be fixed properly. Their script fails because they think it is an error condition if the system has both the rpm and dpkg package manager binaries functionally available. Obviously there is nothing wrong with having two package managers installed and Ubuntu 11.04 falls afoul of this. I've attached a patch for install.sh that resolves the dilemma of which to use with a bias for dpkg, and it doesn't rely on forcing architecture. Although the patch was made for the install.sh found in cnijfilter-mg8100series-3.40-1-deb, I was able to use the same patch file as is for the script in scangearmp-mg8100series-1.60-1-deb as well. This solved the problem for me and I suspect/hope it will for other PIXMA driver installs too, although I haven't tried it with any other GNU/Linux distributions.

    One would think that after all this time, that Canon would clue in that their installation scripts are all broken, at least for the most widely used GNU/Linux distribution in the world. Apparently Canon doesn't test its Linux driver installs. If someone in the know could point the correct Canon folk at this thread, I'm sure we'd all appreciate them fixing this.

    I wasn't sure if embedded tab characters would survive posting my patch as a code element in this forum, which is why I attached the patch as a file. For the casual reader, here is the patch as a code element, but you should prefer the attached file if you actually want to feed it to your system's patch utility:

    Code:
    --- install.sh.original    2011-11-15 23:49:14.872663855 -0800
    +++ install.sh    2011-11-16 03:04:23.082665351 -0800
    @@ -1252,20 +1252,18 @@
         dpkg --version 1> /dev/null 2>&1
         c_system_deb=$?
     
    -    ## rpm and deb are error, or rpm and deb are no error, is error ##
    -    if [ $c_system_rpm = 0 -a $c_system_deb = 0 ] || [ $c_system_rpm != 0 -a $c_system_deb != 0 ]; then
    +    ## Use deb if supported, else rpm if supported, else error ##
    +    if [ $c_system_deb = 0 ]; then
    +        C_system="deb"
    +        C_arch32="i386"
    +        C_arch64="amd64"
    +    elif [ $c_system_rpm = 0 ]; then
    +        C_system="rpm"
    +        C_arch32="i386"
    +        C_arch64="x86_64"
    +    else
             printf "$L_INST_COM_01_02"
             return $C_ERR_CODE
    -    else
    -        if test $c_system_rpm -eq 0; then
    -            C_system="rpm"
    -            C_arch32="i386"
    -            C_arch64="x86_64"
    -        else
    -            C_system="deb"
    -            C_arch32="i386"
    -            C_arch64="amd64"
    -        fi
         fi
         
         return 0
    Attached Files Attached Files

Page 12 of 19 FirstFirst ... 21011121314 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •