Git Product home page Git Product logo

Comments (5)

andresv avatar andresv commented on May 30, 2024

Which platform you are using? I have tested it on 64 bit 14.04 and on Mac OS X 10.10.

There is problem with 32 bit ubuntu 14.04 because of how Rust deals with complex numbers: #3

from doppler.

whit3fir3 avatar whit3fir3 commented on May 30, 2024

andresv,

Sorry I guess it would have helped if I had included that information in my initial post. I'm running this on a 64bit Gentoo based system. Just to be clear any time I execute the doppler binary it is being killed, I assume by MProtect. I have not been able to figure out why MProtect is unhappy about what the code is doing in memory.

from doppler.

andresv avatar andresv commented on May 30, 2024

I cannot reproduce your error on 64 bit Gentoo livecd:

gentoo@livecd ~/Downloads/doppler $ uname -a
Linux livecd 3.15.6-aufs-r1 #1 SMP Thu Aug 7 15:26:08 UTC 2014 x86_64 Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz GenuineIntel GNU/Linux
gentoo@livecd ~/Downloads $ git clone https://github.com/cubehub/doppler.git
Cloning into 'doppler'...
remote: Counting objects: 378, done.
remote: Total 378 (delta 0), reused 0 (delta 0), pack-reused 378
Receiving objects: 100% (378/378), 73.16 KiB | 0 bytes/s, done.
Resolving deltas: 100% (213/213), done.
Checking connectivity... done.
gentoo@livecd ~/Downloads $ git clone https://github.com/cubehub/libgpredict.gitCloning into 'libgpredict'...
remote: Counting objects: 124, done.
remote: Total 124 (delta 0), reused 0 (delta 0), pack-reused 124
Receiving objects: 100% (124/124), 75.74 KiB | 0 bytes/s, done.
Resolving deltas: 100% (61/61), done.
Checking connectivity... done.
gentoo@livecd ~/Downloads $ cd libgpredict/
gentoo@livecd ~/Downloads/libgpredict $ mkdir build
gentoo@livecd ~/Downloads/libgpredict $ cd build/
gentoo@livecd ~/Downloads/libgpredict/build $ cmake ../
-- The C compiler identification is GNU 4.8.3
-- The CXX compiler identification is GNU 4.8.3
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.28")
-- Found GLIB: /usr/include/glib-2.0;/usr/lib64/glib-2.0/include (found version "2.40.0")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/gentoo/Downloads/libgpredict/build
gentoo@livecd ~/Downloads/libgpredict/build $ make
Scanning dependencies of target gpredict
[  8%] Building C object CMakeFiles/gpredict.dir/sgpsdp/solar.c.o
[ 16%] Building C object CMakeFiles/gpredict.dir/sgpsdp/sgp_obs.c.o            
[ 25%] Building C object CMakeFiles/gpredict.dir/sgpsdp/sgp_in.c.o              
[ 33%] Building C object CMakeFiles/gpredict.dir/sgpsdp/sgp_time.c.o            
[ 41%] Building C object CMakeFiles/gpredict.dir/sgpsdp/sgp_math.c.o            
[ 50%] Building C object CMakeFiles/gpredict.dir/sgpsdp/sgp4sdp4.c.o            
[ 58%] Building C object CMakeFiles/gpredict.dir/predict-tools.c.o              
[ 66%] Building C object CMakeFiles/gpredict.dir/time-tools.c.o                
[ 75%] Building C object CMakeFiles/gpredict.dir/orbit-tools.c.o                
[ 83%] Building C object CMakeFiles/gpredict.dir/gtk-sat-data.c.o              
[ 91%] Building C object CMakeFiles/gpredict.dir/qth-data.c.o                  
[100%] Building C object CMakeFiles/gpredict.dir/sat-vis.c.o                    
Linking C shared library libgpredict.so
[100%] Built target gpredict
gentoo@livecd ~/Downloads/libgpredict/build $ make install
[100%] Built target gpredict
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/libgpredict.so
CMake Error at cmake_install.cmake:42 (FILE):
  file INSTALL cannot copy file
  "/home/gentoo/Downloads/libgpredict/build/libgpredict.so" to
  "/usr/local/lib/libgpredict.so".


Makefile:65: recipe for target 'install' failed
make: *** [install] Error 1
gentoo@livecd ~/Downloads/libgpredict/build $ sudo make install
[100%] Built target gpredict
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/libgpredict.so
-- Installing: /usr/local/include/gpredict/gpredict.h
-- Installing: /usr/local/include/gpredict/gtk-sat-data.h
-- Installing: /usr/local/include/gpredict/orbit-tools.h
-- Installing: /usr/local/include/gpredict/predict-tools.h
-- Installing: /usr/local/include/gpredict/qth-data.h
-- Installing: /usr/local/include/gpredict/sat-vis.h
-- Installing: /usr/local/include/gpredict/time-tools.h
-- Installing: /usr/local/include/gpredict/sgpsdp/sgp4sdp4.h
gentoo@livecd ~/Downloads/libgpredict/build $ sudo ldconfig
gentoo@livecd ~/Downloads/libgpredict/build $ cd ..
gentoo@livecd ~/Downloads/libgpredict $ cd ..
gentoo@livecd ~/Downloads $ cd doppler/
gentoo@livecd ~/Downloads/doppler $ curl -sSf https://static.rust-lang.org/rustup.sh | sh

Welcome to Rust.

This script will download the Rust compiler and its package manager, Cargo, and
install them to /usr/local. You may install elsewhere by running this script
with the --prefix=<path> option.

The installer will run under 'sudo' and may ask you for your password. If you do
not want the script to run 'sudo' then pass it the --disable-sudo flag.

You may uninstall later by running /usr/local/lib/rustlib/uninstall.sh,
or by running this script again with the --uninstall flag.

Continue? (y/N) y

rustup: gpg available. signatures will be verified
rustup: downloading manifest for 'stable'
rustup: downloading toolchain for 'stable'
######################################################################## 100.0%
gpg: Signature made Wed 05 Aug 2015 01:31:43 AM UTC using RSA key ID 7B3B09DC
gpg: Good signature from "Rust Language (Tag and Release Signing Key) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 108F 6620 5EAE B0AA A8DD  5E1C 85AB 96E6 FA1B E5FE
     Subkey fingerprint: C134 66B7 E169 A085 1886  3216 5CB4 A934 7B3B 09DC
rustup: extracting installer
rustup: installing toolchain for 'stable'
install: creating uninstall script at /usr/local/lib/rustlib/uninstall.sh
install: installing component 'rustc'
install: installing component 'cargo'
install: installing component 'rust-docs'

    Rust is ready to roll.

gentoo@livecd ~/Downloads/doppler $ cargo build --release
    Updating registry `https://github.com/rust-lang/crates.io-index`
    Updating git repository `https://github.com/cubehub/rust-gpredict.git`
 Downloading clap v0.9.2
 Downloading num v0.1.25
 Downloading ansi_term v0.5.2
 Downloading libc v0.1.5
 Downloading strsim v0.3.0
 Downloading log v0.3.2
 Downloading rustc-serialize v0.3.15
 Downloading rand v0.3.8
 Downloading gcc v0.3.5
 Downloading time v0.1.25
   Compiling libc v0.1.5
   Compiling strsim v0.3.0
   Compiling rustc-serialize v0.3.15
   Compiling ansi_term v0.5.2
   Compiling gcc v0.3.5
   Compiling rand v0.3.8
   Compiling log v0.3.2
   Compiling clap v0.9.2
   Compiling time v0.1.25
   Compiling gpredict v0.2.2 (https://github.com/cubehub/rust-gpredict.git#763df98b)
   Compiling num v0.1.25
   Compiling doppler v1.1.1 (file:///home/gentoo/Downloads/doppler)
gentoo@livecd ~/Downloads/doppler $ ./target/release/doppler -h
doppler 1.1.1
Andres Vahter <[email protected]>
Compensates IQ data stream doppler shift based on TLE information and constant shift for IQ data is also possible.

USAGE:
        doppler [FLAGS] [SUBCOMMANDS]

FLAGS:
    -h, --help       Prints help information
    -v, --version    Prints version information

SUBCOMMANDS:
    const    Constant shift mode
    help     Prints this message
    track    Doppler tracking mode
gentoo@livecd ~/Downloads/doppler $ sudo cp target/release/doppler /usr/local/bin/
gentoo@livecd ~/Downloads/doppler $ doppler -h                                            
doppler 1.1.1                                                                                            
Andres Vahter <[email protected]>
Compensates IQ data stream doppler shift based on TLE information and constant shift for IQ data is also possible.

USAGE:
        doppler [FLAGS] [SUBCOMMANDS]

FLAGS:
    -h, --help       Prints help information
    -v, --version    Prints version information

SUBCOMMANDS:
    const    Constant shift mode
    help     Prints this message
    track    Doppler tracking mode

from doppler.

whit3fir3 avatar whit3fir3 commented on May 30, 2024

andresv,

On the live environment that you were running were you using normal Gentoo or the Hardened Gentoo live CD? The reason I ask is I believe the problem is related to PaX ( https://en.wikipedia.org/wiki/PaX ) and I do believe that PaX is preinstalled on the Gentoo Hardened live version. Something that the code is attempting to do something PaX isn't happy about, or that is my theory at least.

Currently I've disabled MPROTECT on the binary (#paxctl -m ./doppler), but when I attempt to execute doppler in an strace I still see MPROTECT killing the process.

from doppler.

andresv avatar andresv commented on May 30, 2024

I was using this image: http://ftp.snt.utwente.nl/pub/os/linux/gentoo/releases/amd64/20140826/livedvd-amd64-multilib-20140826.iso

from doppler.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.