scipion-em / scipion-em-relion

Plugin to use Relion SPA programs within the Scipion framework
GNU General Public License v3.0
3 stars 0 forks source link

Relion - auto-picking LoG fail - unknown "--pickname"" #317

Closed FraaaMazzz closed 3 years ago

FraaaMazzz commented 3 years ago

I have obtained my micrographs and I now want to pick the particles for SPA. So I launch Relion - auto-picking LoG but it fails immediately.

I'm working with Scipion v3.0.9

run.stdout

_00047: Logging configured. STDOUT --> Runs/001888_ProtRelionAutopickLoG/logs/run.stdout , STDERR --> Runs/001888_ProtRelionAutopickLoG/logs/run.stderr 00048: RUNNING PROTOCOL ----------------- 00049: Protocol starts 00050: Hostname: Cryo-EM-Worktsation 00051: PID: 41947 00052: pyworkflow: 3.0.17 00053: plugin: relion 00054: plugin v: 3.1.3 00055: currentDir: /home/em-group/ScipionUserData/Mazzotta/ApoFer 00056: workingDir: Runs/001888_ProtRelionAutopickLoG 00057: runMode: Continue 00058: MPI: 4 00059: threads: 1 00060: Starting at step: 1 00061: Running steps 00062: STARTED: pickMicrographStep, step 1, time 2021-10-19 13:33:00.458358 00063: Picking micrograph: Runs/000655_XmippProtMovieCorr/extra/190117_02_00001_UnderDefocus0.7um_frameImage_aligned_mic.mrc 00064: Some paths do not exist in: /usr/local/cuda-10.1/lib64 00065: mpirun -np 4 which relion_autopick_mpi --pickname autopick --odir "./" --LoG --shrink 0 --lowpass 20.000 --i input_micrographs.star --LoG_diam_min 100.000 --LoG_diam_max 200.000 --LoG_adjust_threshold 0.000 --LoG_upper_threshold 999.000 00066: Protocol failed: Command ' mpirun -np 4 which relion_autopick_mpi --pickname autopick --odir "./" --LoG --shrink 0 --lowpass 20.000 --i input_micrographs.star --LoG_diam_min 100.000 --LoG_diam_max 200.000 --LoG_adjust_threshold 0.000 --LoG_upperthreshold 999.000' returned non-zero exit status 1. 00067: FAILED: pickMicrographStep, step 1, time 2021-10-19 13:33:00.481998 00068: *** Last status is failed 00069: ------------------- PROTOCOL FAILED (DONE 1/21)

run.stderr

_00059: mpirun: Error: unknown option "--pickname" 00060: Type 'mpirun --help' for usage. 00061: Traceback (most recent call last): 00062: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/protocol/protocol.py", line 201, in run 00063: self._run() 00064: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/protocol/protocol.py", line 252, in _run 00065: resultFiles = self._runFunc() 00066: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/protocol/protocol.py", line 248, in _runFunc 00067: return self._func(self._args) 00068: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pwem/protocols/protocol_particles_picking.py", line 241, in pickMicrographStep 00069: self._pickMicrograph(mic, args) 00070: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/relion/protocols/protocol_autopick.py", line 44, in _pickMicrograph 00071: self._pickMicrographList([mic], args) 00072: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/relion/protocols/protocol_autopick.py", line 54, in _pickMicrographList 00073: self._pickMicrographsFromStar(micStar, micsDir, args) 00074: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/relion/protocols/protocol_autopick_log.py", line 161, in _pickMicrographsFromStar 00075: self.runJob(program, params, cwd=cwd) 00076: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/protocol/protocol.py", line 1388, in runJob 00077: self._stepsExecutor.runJob(self._log, program, arguments, **kwargs) 00078: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/protocol/executor.py", line 65, in runJob 00079: process.runJob(log, programName, params, 00080: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/utils/process.py", line 52, in runJob 00081: return runCommand(command, env, cwd) 00082: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/utils/process.py", line 67, in runCommand 00083: check_call(command, shell=True, stdout=sys.stdout, stderr=sys.stderr, 00084: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/subprocess.py", line 364, in check_call 00085: raise CalledProcessError(retcode, cmd) 00086: subprocess.CalledProcessError: Command ' mpirun -np 4 which relion_autopick_mpi --pickname autopick --odir "./" --LoG --shrink 0 --lowpass 20.000 --i input_micrographs.star --LoG_diam_min 100.000 --LoG_diam_max 200.000 --LoG_adjust_threshold 0.000 --LoG_upper_threshold 999.000' returned non-zero exit status 1. 00087: Protocol failed: Command ' mpirun -np 4 which relion_autopick_mpi --pickname autopick --odir "./" --LoG --shrink 0 --lowpass 20.000 --i input_micrographs.star --LoG_diam_min 100.000 --LoG_diam_max 200.000 --LoG_adjust_threshold 0.000 --LoG_upperthreshold 999.000' returned non-zero exit status 1.

Can you help me understand what I'm doing wrong?

azazellochg commented 3 years ago

mpirun: Error: unknown option "--pickname" means that you have not configured Scipion to point to your relion installation.

FraaaMazzz commented 3 years ago

How can I do this? I think I'm having some troubles getting Relion to work. I have removed Relion via the plugin manager and tried reinstalling but I get errors Screenshot from 2021-10-20 12-07-20 . This is the Plugin.err

_0001: https://codeload.github.com/3dem/relion/tar.gz/4.0: 00002: 2021-10-20 12:06:07 ERROR 404: Not Found. 00003: tar: This does not look like a tar archive 00004:
00005: gzip: stdin: unexpected end of file 00006: tar: Child returned status 1 00007: tar: Error is not recoverable: exiting now 00008: --- Logging error --- 00009: Traceback (most recent call last): 00010: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/plugin_manager.py", line 772, in _applyOperations 00011: op.runOperation(self.numberProcessors.get(), not self.skipBinaries.get()) 00012: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/plugin_manager.py", line 242, in runOperation 00013: plugin.installBin({'args': ['-j', processors]}) 00014: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/plugin_funcs.py", line 166, in installBin 00015: environment.execute() 00016: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/funcs.py", line 748, in execute 00017: self._executeTargets(targetList) 00018: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/funcs.py", line 690, in _executeTargets 00019: tgt.execute() 00020: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/funcs.py", line 221, in execute 00021: command.execute() 00022: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/funcs.py", line 161, in execute 00023: assert glob(t), ("target '%s' not built (after " 00024: AssertionError: target '/home/em-group/Programs/software/em/relion-4.0' not built (after running 'tar -xf relion-4.0.tgz') 00025:
00026: During handling of the above exception, another exception occurred: 00027:
00028: Traceback (most recent call last): 00029: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/logging/init.py", line 1085, in emit 00030: msg = self.format(record) 00031: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/logging/init.py", line 929, in format 00032: return fmt.format(record) 00033: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/logging/init.py", line 668, in format 00034: record.message = record.getMessage() 00035: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/logging/init.py", line 373, in getMessage 00036: msg = msg % self.args 00037: TypeError: not all arguments converted during string formatting 00038: Call stack: 00039: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/threading.py", line 890, in _bootstrap 00040: self._bootstrap_inner() 00041: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/threading.py", line 932, in _bootstrap_inner 00042: self.run() 00043: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/threading.py", line 870, in run 00044: self._target(*self._args, **self._kwargs) 00045: File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/scipion/install/plugin_manager.py", line 793, in _applyOperations 00046: self.plug_errorslog.error(redStr(strErr), False) 00047: Message: '\x1b[31mError executing the operation: install scipion-em-relion\x1b[0m' 00048: Arguments: (False,)

azazellochg commented 3 years ago

Hi, I'll fix the error. In the meantime, tick "Skip binaries" when installing relion plugin. We do not provide relion4 binaries, you have to install them yourself.

azazellochg commented 3 years ago

Error msg updated

FraaaMazzz commented 3 years ago

I think I have successfully and correctly installed Relion, I have even specified the relion location in scipion.conf, but I still get the mpirun: Error: unknown option "--pickname"

azazellochg commented 3 years ago

Okay, can you post here output from the following commands: 1) scipion config -p relion 2) scipion run relion_refine --version 3) mpirun -np 4 hostname

FraaaMazzz commented 3 years ago

1) scipion3 config -p relion

Scipion v3.0.9 - Eugenius Variables defined by plugin 'relion':

RELION_HOME = /home/em-group/Programs/software/em/relion-4.0/ RELION_CUDA_LIB = /usr/local/cuda-11.4/lib64 RELION_PYTHON = None

These variables can be added/edited in '/home/em-group/Programs/config/scipion.conf'

2) scipion3 run relion_refine --version Scipion v3.0.9 - Eugenius relion command detected ** Running command: relion_refine "--version" /bin/sh: 1: relion_refine: not found Traceback (most recent call last): File "/home/em-group/miniconda3/envs/scipion3/bin/emprogram", line 8, in sys.exit(main()) File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pwem/cmd/program.py", line 43, in main runProgram(program, params) File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pwem/utils.py", line 69, in runProgram pwutils.runJob(None, program, params, env=env) File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/utils/process.py", line 52, in runJob return runCommand(command, env, cwd) File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/site-packages/pyworkflow/utils/process.py", line 67, in runCommand check_call(command, shell=True, stdout=sys.stdout, stderr=sys.stderr, File "/home/em-group/miniconda3/envs/scipion3/lib/python3.8/subprocess.py", line 364, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command ' relion_refine "--version"' returned non-zero exit status 127.

3) mpirun -np 4 hostname Invalid MIT-MAGIC-COOKIE-1 keyCryo-EM-Worktsation Cryo-EM-Worktsation Cryo-EM-Worktsation Cryo-EM-Worktsation

azazellochg commented 3 years ago

Hm, does scipion installp -h show scipion-em-relion plugin version 4.0 ? If you cd /home/em-group/Programs/software/em/relion-4.0/bin and then run mpirun -np 3 relion_refine --version, does it work?

FraaaMazzz commented 3 years ago

scipion installp -h shows: scipion-em-relion 4.0b3 [X]

I don't have the "bin" directory in relion-4.0 so I can only go until cd /home/em-group/Programs/software/em/relion-4.0/

In the relion directory mpirun -np 3 relion_refine --version returns the following: Invalid MIT-MAGIC-COOKIE-1 key-------------------------------------------------------------------------- mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 0; it may have occurred for other processes as well.

NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable).

Node: Cryo-EM-Worktsation Executable: relion_refine

3 total processes failed to start

azazellochg commented 3 years ago

Voila! This is the problem. Inside relion-4.0 you are expected to have bin, lib and other stuff. What do you have inside?

FraaaMazzz commented 3 years ago

Nothing :(

azazellochg commented 3 years ago

Oh well, you have not installed relion binaries correctly then. Did you clone the git repo as per instructions?

FraaaMazzz commented 3 years ago

In ~/Programs/software/em/ I also have a relion folder that has the following folders: AUTHORS build CMakeLists.txt data LICENSE relion.h src betaGuide.pdf cmake COPYING external README.md scripts tests

azazellochg commented 3 years ago

okay, that looks good! It seems that you have installed your relion into ~/Programs/software/em/relion then. Remove relion-4.0 folder and make a symbolic link:

cd /home/em-group/Programs/software/em/ ln -s /home/em-group/Programs/software/em/relion/build relion-4.0

FraaaMazzz commented 3 years ago

Yes!!!! It finally worked!!!!! Thank you so much! :)

azazellochg commented 3 years ago

Great! You are welcome