AMPL IDE usage issue - ide

I want to use AMPL student version.
also I apply its IDE for mathematical modelling, but when I open it, it pop-up a box showing the following message.
A valid AMPL license file could not be found for this machine.
For assistance, copy this entire message and send it to licensing#ampl.com.
Details:
License file ampl.lic not found anywhere in $PATH.
What can I do to fix this issue?

The AMPL IDE distribution available for download from http://www.ampl.com/IDE/ includes a full version of ampl which requires a license. To use the student version, you need to replace the ampl and solver binaries in the amplide/ampl directory with their student versions available here.
Alternatively, you can download a demo version of the IDE from one of the following locations:
Linux: http://ampl.com/dl/demo/amplide-demo-linux32.tar.gz
OS X: http://ampl.com/dl/demo/amplide-demo-macosx.tar.gz
Windows: http://ampl.com/dl/demo/amplide-demo-mswin.zip

Simply place the amplide folder inside the amplcml folder (which is the free student version of AMPL).

Related

Can't render component diagram with PlantUML in IntelliJ

I am trying to create a component diagram using the PlantUML plugin for IntelliJ.
I have installed the plugin and worked with it before. However, when I try to render a component diagram, I get an error:
Cannot find Graphviz
I've also checked with other diagrams and a sequence diagram is still working just fine.
What is the problem here?
On a mac using Intellij, if Intellij cannot find graphviz, testdot doesn't work and graphviz was installed with brew install graphviz:
In Intellij, click the wrench icon on the far right of the menu panel that contains the plantuml view and editor arrangement.
Click 'Open settings'
For 'Graphviz dot executable' add /opt/homebrew/bin/dot.
Click OK and restart Intellij.
This fixes the issue for me.
You can check first that you really are missing the /opt/local/bin/dot (or whatever path you're shown is broken) and the /opt/homebrew/bin/dot exists, but likely the reason is that brew put dot under its own path.
Sequence diagrams and activity diagrams work out of the box.
For other types of diagrams, you need to have Graphviz installed (version > 2.26.3).
If you don't have Graphviz installed - just install it.
If you have it installed but its version is improper - reinstall it.
If you have it installed in proper version but location is other than default - point to that location. You can manage that either by specifying env variable GRAPHVIZ_DOT containing a path to Graphviz executable or pointing it out directly from IntelliJ's PlantUML plugin settings.
Here, you can read more on how to install Graphviz to get along with PlantUML.
Btw. I solved the same problem by simply typing sudo apt-get install graphviz in my console - maybe would work for you as well.
As mentioned here https://plantuml.com/graphviz-dot
Since version 1.2021.5, you can experimentally use PlantUML without installing Graphviz
if you add !pragma layout smetana to your diagrams for the supported types. In that case, the "Smetana" engine is used instead of Graphviz
Therefore this worked for me;
#startuml
!pragma layout smetana
...
#enduml
I hope it helps!
If you:
1.installed Graphviz
2.configured GRAPHVIZ_DOT env var to your dot.exe file
(example D:\Program Files (x86)\Graphviz2.38\bin\dot.exe)
And you're still getting the same error: Cannot find Graphviz1.
You probably need to configure the path to the dot.exe inside the Intelij settings.
Follow this tutorial to do so.
In case it helps someone, these are the steps to resolve the same error (Can not find GraphViz...) from Eclipse editor.
Install GraphViz on your system. Depending on your system, installation instructions are here: https://graphviz.org/download/ . For Mac (v11.6) users, it is as simple as brew install graphviz
After installation is completed, add an environment variable: GRAPHVIZ_DOT to point to the path of the dot executable. On my machine, I added this:
export GRAPHVIZ_DOT=/opt/homebrew/bin/dot
Add path of the dot executable to Eclipse PlantUml preferences (Preferences --> Plant UML --> Path to the dot executable of Graph Viz). Screen shot given below:
First install graphviz
Find dot executable and put it where IntelliJ can find it
Windows: Add the dot executable path in the environment variables path settings
Linux: find the location of dot using where dot and if it's not in the /opt/local/bin you can just create a symbolink link from lets say /usr/local/bin by running ln -s /usr/local/bin/dot /opt/local/bin/dot
Restart IntelliJ
I had trouble too...the easiest way is to install the VsCode plugin 'Markdown Preview Enhanced' and then...magically...IntelliJ works fine too!!!

IntelliJ shows decompiled .class file instead of source code

I am having issues with IntelliJ - it shows me a "decompiled" version of the class instead of its source code if I ctrl+click the class.
This is what I see:
I am trying to open regular JDK source files.
The most relevant issue I found is explained here: Java sources replaced by decompiled files in Intellij
The most detailed answer I've found so far is there as well.
Yet it doesn't work for me:
Bytecode Viewer plugin is off.
Java Bytecode Decompiler plugin is off.
Platform, Project and Module all have same JDK version setup.
I have two JDKs available in IntelliJ: jdk1.8.0_161 and jbsdk8u112b287.2_windows_x86 (bundled with IntelliJ, but comes without src.zip). Tried with both (had to specify src.zip of jdk1.8.0_161 for jbsdk8u112b287.2_windows_x86) - no luck
src.zip is not corrupt - I can open it via WinRAR
When added jdk1.8.0_161 to IntelliJ, it automatically found src.zip. When manually adding src.zip to jbsdk8u112b287.2_windows_x86 Sourcepath tab - it started "Scanning for roots", but warned me that it "cannot determine what kind of files the chosen items contain" and offered me to "attach them as 'Sources'" so I agreed.
Tried File > Invalidate Caches / Restart... - same result.
Same issue in 2017.3 and fresh 2018.1 versions of IntelliJ.
Providing path for Documentation makes IntelliJ look for the documentation in the path specified. So it works as it should for both of JDKs. But not for sources.
Everything else works/compiles properly.
My settings:
1. Get the source files
Make sure you have downloaded and installed the source files of the JDK.
I'm on Arch Linux and installed them with pacman -S openjdk8-src which put a src.zip into /usr/lib/jvm/java-8-openjdk/. We'll use that zip file in the next step.
To list source packages of different JDK versions, do pacman -Ss "openjdk.*-src".
See this question on how to get the source files for your specific platform.
2. Point IntelliJ to the source files
In your module settings (open them with F4) under "Platform Settings" → "SDKs" → "Sourcepath", add the zip file containing the JDK source to your project JDK (be sure to pick the right JDK if IntelliJ lists more than one JDK) using the button with the plus sign:
3. Jump into the source
Select a JDK class, like Comparator, using IntelliJ's Search Everywhere or Ctrl+b with the cursor on the name of the class.
I also have the same problem. The problem for my case is that Project SDK is set to 13 [Invalid]. After I can Project SDK to a valid SDK. My problem is solved.
I tried all the things mentioned at other places for this but at the end I was doing a silly mistake. Intellij was pointing to JDK 11 for which there was no source code (I had both the SDKs 8 & 11). I removed JDK 11 and pointed to JDK 8. JDK had the source code, thus now I can see the source code on ctrl click. Also, I had disabled the bytecode viewer and decompiler plugins. Hope this helps some one.
This also happens for large files - IDEA decides to decompile them instead if indexing sources, which can take ages.
If you're willing to accept the drawdown, adding the following in Help | Edit Custom Properties might fix the problem:
idea.max.intellisense.filesize=4096
On ubuntu there was java version “OpenJDK” when I changed to “Oracle Java”, the error went away and javadoc returned
I meet same problem and finally it gone after I copy JDK to another folder and change config in IntelliJ. I think maybe cause there is a space in path before, because it is installed under "Program Files" folder.
For downloading the source code of class files belong to jar you can use download source option present on top right corner in the de-compiled class file.
On my Windows 10, expand maven:
For me going to File -> Project Structure -> Project -> SDK -> Add SDK -> Download JDK and selecting Oracle OpenJDK solved the problem. Prior to that I had a different JDK selected and apparently it didn't include source code
If you are in a maven project make sure in the project structure all the complied folders are in the excluded section.
I suggest to use Linux Instead of windows. It's easy to find and download Java.
If you are using Linux, you can download SDKMAN
Install Java by SDKMAN
# find version
$ sdk list java
# download
$ sdk install java x.y.z-amzn
ctrl+alt+shift+s add JDK
Switch project JDK
If you are using maven , Right click on Project explorer -> choose Maven -> chick on "reload projects"
This did the trick for me:
Make sure you select the option "Project Files" (instead e.g. "Project").

How can I find which part of my code is associated with an entry in the symbol table?

I am working on a project which needs to be executed in a Linux machine that has turned out not to have the GLIBCXX_3.4.20 version of a library, but the code needs it. Is there anyway to find which part of my code (C++) asks for this version?
I read the ELF file using objdump and realdef and I found which symbol needs it:
_ZSt24__throw_out_of_rang#GLIBCXX_3.4.20 (4)
but I don't know to which part of my code can be related.
Your question is essentially a duplicate of this question.
Except in your case, it's not libc.so.6, but libstdc++.so that's giving you trouble.
Your problem is that you are compiling with new GCC, but are running on a machine with an old libstdc++.so.
You have a few options:
you can update target machine to have a new enough libstdc++.so
you can build using older version of GCC
you could use -static-libstdc++ flag to link required version of libstdc++ directly into your application. This will make a larger binary, but it will not be using libstdc++.so at all.
Note that if you link against other shared libraries that do link against libstdc++.so, your binary may not run correctly on the target machine, so this solution should be used with caution.

Setting OCaml Binaries Directory Path for OcalDE

I would like to use the OcalIDE plugin to have Ocaml in my Eclipse.
I had installed the ocaml-3.12.0-intel on my Mac and then OcalIDE plugin. But I couldn't make it finish as my Ocaml paths are all undefined.
I know my Ocaml package was installed at /usr/local/lib/ocaml as default, but the preference keep popping value must be an existing file error and I have no idea what was going wrong.
Any help from the floor?
If you installed OCaml in the standard locations, the path should be filled automatically. You can check in:
Window > Preferences > OcaIDE > Paths
Check also this really good tutorial : http://www.algo-prog.info/ocaide/tutorials/1-installing/installing.htm

hadoop with MultiInputs, TotalOrderPartitioner-----------with hadoop-eclipse-plugins

I have got two questions:
Now I have used hadoop0.20.203 and hadoop1.0.0. But I found that both of the two versions have no classes like MultiInputs , TotalOrderPartitioner and so on. (I open the $HADOOP_HOME/hadoop-core-1.0.0.jar file , and don't find the .class files in ort/apache/hadoop/mapreduce/lib/input/*).
But I have to use them to do some jobs. Did I miss anything? What version should I choose?
I want to find a plugins for hadoop1.0.2 ( because I found this version the hadoop-core-1.0.2.jar file has the class that I want.) I want to find one that was compiled. where can I find it?(I have got some but seems unavailable)
In a word, What my object is only to find an available hadoop---version,and plugins for eclipse. This version can deals with TotalOrder and so on. What should I do? Thanks in advance.
If they exist in 1.0.2, can you use this version instead? if your cluster currently uses 1.0.0 and you can't upgrade it to run 1.0.2, then you can get the source for these two files and add them into your job jar (as if they were code you had written).
1.0.2 is available for download from the mirrors list:
http://www.apache.org/dyn/closer.cgi/hadoop/common/
For example: http://apache.mirrorcatalogs.com/hadoop/common/hadoop-1.0.2/hadoop-1.0.2-bin.tar.gz